r3187: This 'optional' part of the ASN.1 in SPNEGO is required by Samba3 (but
authorAndrew Bartlett <abartlet@samba.org>
Mon, 25 Oct 2004 04:21:41 +0000 (04:21 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:04:38 +0000 (13:04 -0500)
not Microsoft).  Unfortunetly it's harder to fix Samba3 than to make
Samba4 cope...

Andrew Bartlett
(This used to be commit bbd52ab2641d5d6fc184235ac838ce4a022174a9)

source4/libcli/auth/spnego_parse.c

index 07dba61ddefaf04ab585a2bc68665a29cd0172a2..4b9423596212a140ef0e1bd8f3fd1f5d8515922e 100644 (file)
@@ -233,11 +233,10 @@ 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 (token->negResult != SPNEGO_NONE_RESULT) {
-               asn1_push_tag(asn1, ASN1_CONTEXT(0));
-               asn1_write_enumerated(asn1, token->negResult);
-               asn1_pop_tag(asn1);
-       }
+       /* Optional, except that Samba3 requires it... */
+       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));