r3289: Mr. L. and Mr. B.!
authorStefan Metzmacher <metze@samba.org>
Wed, 27 Oct 2004 12:59:41 +0000 (12:59 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:04:50 +0000 (13:04 -0500)
can we decide to not break WinXP clients:-)

metze
(This used to be commit 5eb0ff78d5e68f488a439545fdaec90c28ef877a)

source4/libcli/auth/spnego.c
source4/libcli/auth/spnego_parse.c

index dff9cb0c516e9687d8c99b840b5cf88e75091868..85d77992fa919a99c0f326d3fe06691ef444e2cb 100644 (file)
@@ -376,8 +376,7 @@ static NTSTATUS gensec_spnego_server_negTokenTarg(struct gensec_security *gensec
                spnego_out.negTokenTarg.negResult = SPNEGO_ACCEPT_INCOMPLETE;
                spnego_state->state_position = SPNEGO_SERVER_TARG;
        } else if (NT_STATUS_IS_OK(nt_status)) {
-               spnego_out.negTokenTarg.supportedMech 
-                       = spnego_state->sub_sec_security->ops->oid;
+               spnego_out.negTokenTarg.supportedMech = NULL;
                spnego_out.negTokenTarg.negResult = SPNEGO_ACCEPT_COMPLETED;
                spnego_state->state_position = SPNEGO_DONE;
        } else {
index 337ba7a3391fbf665e489573b565ed8cd1cd0e66..07dba61ddefaf04ab585a2bc68665a29cd0172a2 100644 (file)
@@ -233,12 +233,11 @@ static BOOL write_negTokenTarg(ASN1_DATA *asn1, struct spnego_negTokenTarg *toke
        asn1_push_tag(asn1, ASN1_CONTEXT(1));
        asn1_push_tag(asn1, ASN1_SEQUENCE(0));
 
-#if 0
-       /* Optional, except that Samba3 requires it... */
-       asn1_push_tag(asn1, ASN1_CONTEXT(0));
-       asn1_write_enumerated(asn1, token->negResult);
-       asn1_pop_tag(asn1);
-#endif
+       if (token->negResult != SPNEGO_NONE_RESULT) {
+               asn1_push_tag(asn1, ASN1_CONTEXT(0));
+               asn1_write_enumerated(asn1, token->negResult);
+               asn1_pop_tag(asn1);
+       }
 
        if (token->supportedMech) {
                asn1_push_tag(asn1, ASN1_CONTEXT(1));