summaryrefslogtreecommitdiff
path: root/source4/libcli
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2004-07-11 10:20:42 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:56:56 -0500
commit47fc62a097b0529657114f77f89858ad7fb52528 (patch)
tree269e578f9d0d795254bc894774724c4689180819 /source4/libcli
parentb0d61c8b42dff8cafa502c279acad5db43c0dea8 (diff)
downloadsamba-47fc62a097b0529657114f77f89858ad7fb52528.tar.gz
samba-47fc62a097b0529657114f77f89858ad7fb52528.tar.bz2
samba-47fc62a097b0529657114f77f89858ad7fb52528.zip
r1438: Record the principal name we are sent in the SPENGO mechListMIC in a
seperate char *, not a DATA_BLOB. This allows us to tell if we were sent a string here, or a real MIC. (This used to be commit 06b997c826e3ec00e0528da800e3eae0e3497a54)
Diffstat (limited to 'source4/libcli')
-rw-r--r--source4/libcli/auth/spnego.h1
-rw-r--r--source4/libcli/auth/spnego_parse.c5
2 files changed, 3 insertions, 3 deletions
diff --git a/source4/libcli/auth/spnego.h b/source4/libcli/auth/spnego.h
index decd79e107..926cb7f88d 100644
--- a/source4/libcli/auth/spnego.h
+++ b/source4/libcli/auth/spnego.h
@@ -45,6 +45,7 @@ struct spnego_negTokenInit {
int reqFlags;
DATA_BLOB mechToken;
DATA_BLOB mechListMIC;
+ char *targetPrincipal;
};
struct spnego_negTokenTarg {
diff --git a/source4/libcli/auth/spnego_parse.c b/source4/libcli/auth/spnego_parse.c
index b239a4ebf0..d32fd65c4d 100644
--- a/source4/libcli/auth/spnego_parse.c
+++ b/source4/libcli/auth/spnego_parse.c
@@ -95,9 +95,7 @@ static BOOL read_negTokenInit(ASN1_DATA *asn1, struct spnego_negTokenInit *token
asn1_pop_tag(asn1);
asn1_pop_tag(asn1);
- token->mechListMIC =
- data_blob(mechListMIC, strlen(mechListMIC));
- SAFE_FREE(mechListMIC);
+ token->targetPrincipal = mechListMIC;
}
asn1_end_tag(asn1);
break;
@@ -355,6 +353,7 @@ BOOL spnego_free_data(struct spnego_data *spnego)
}
data_blob_free(&spnego->negTokenInit.mechToken);
data_blob_free(&spnego->negTokenInit.mechListMIC);
+ SAFE_FREE(spnego->negTokenInit.targetPrincipal);
break;
case SPNEGO_NEG_TOKEN_TARG:
if (spnego->negTokenTarg.supportedMech) {