Bläddra i källkod

When verifying the decoded header before decoding the object identifier
(expecting a SPNEGO pseudo-mechanism oid), the test to verify it is a
primitive encoding is compared against the asn1 class. Primitive is not a
class. This brings check in line with similar check for krb/ntlmssp oid.

Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Cc: Steven French <sfrench@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Steve French <sfrench@us.ibm.com>

Chris Wright 17 år sedan
förälder
incheckning
e2d2867ff8
1 ändrade filer med 1 tillägg och 1 borttagningar
  1. 1 1
      fs/cifs/asn1.c

+ 1 - 1
fs/cifs/asn1.c

@@ -494,7 +494,7 @@ decode_negTokenInit(unsigned char *security_blob, int length,
 		/*      remember to free obj->oid */
 		/*      remember to free obj->oid */
 		rc = asn1_header_decode(&ctx, &end, &cls, &con, &tag);
 		rc = asn1_header_decode(&ctx, &end, &cls, &con, &tag);
 		if (rc) {
 		if (rc) {
-			if ((tag == ASN1_OJI) && (cls == ASN1_PRI)) {
+			if ((tag == ASN1_OJI) && (con == ASN1_PRI)) {
 				rc = asn1_oid_decode(&ctx, end, &oid, &oidlen);
 				rc = asn1_oid_decode(&ctx, end, &oid, &oidlen);
 				if (rc) {
 				if (rc) {
 					rc = compare_oid(oid, oidlen,
 					rc = compare_oid(oid, oidlen,