do not ignore sequenceCheck() return value
authorLuke Howard <lukeh@padl.com>
Mon, 2 Dec 2013 06:04:51 +0000 (17:04 +1100)
committerKevin Wasserman <kevin.wasserman@painless-security.com>
Thu, 19 Dec 2013 17:17:56 +0000 (12:17 -0500)
mech_eap/unwrap_iov.c

index 5ceefa2..39f7f1c 100644 (file)
@@ -233,7 +233,9 @@ unwrapToken(OM_uint32 *minor,
             }
         }
 
-        code = sequenceCheck(minor, &ctx->seqState, seqnum);
+        major = sequenceCheck(&code, &ctx->seqState, seqnum);
+        if (GSS_ERROR(major))
+            goto cleanup;
     } else if (toktype == TOK_TYPE_MIC) {
         if (load_uint16_be(ptr) != toktype)
             goto defective;
@@ -257,7 +259,9 @@ unwrapToken(OM_uint32 *minor,
             major = GSS_S_BAD_SIG;
             goto cleanup;
         }
-        code = sequenceCheck(minor, &ctx->seqState, seqnum);
+        major = sequenceCheck(&code, &ctx->seqState, seqnum);
+        if (GSS_ERROR(major))
+            goto cleanup;
     } else if (toktype == TOK_TYPE_DELETE_CONTEXT) {
         if (load_uint16_be(ptr) != TOK_TYPE_DELETE_CONTEXT)
             goto defective;