Fix error handling issue in ASN.1 decoder
authorGreg Hudson <ghudson@mit.edu>
Tue, 17 Mar 2009 21:54:51 +0000 (21:54 +0000)
committerGreg Hudson <ghudson@mit.edu>
Tue, 17 Mar 2009 21:54:51 +0000 (21:54 +0000)
In asn1_k_decode.c, check the return value of
end_sequence_of_no_tagvars_helper.

ticket: 6427
tags: pullup
target_version: 1.7

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@22107 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/krb5/asn.1/asn1_k_decode.c

index c5d200628e107e2b64629bf8f7b4da669e808d45..25cc4cc623b440ed2f8ca33b2f1d1fe5cfc812ef 100644 (file)
@@ -364,7 +364,8 @@ end_sequence_of_no_tagvars_helper(asn1buf *buf, asn1buf *seqbufp,
     return retval;
 }
 #define end_sequence_of_no_tagvars(buf) \
-    end_sequence_of_no_tagvars_helper(buf, &seqbuf, seqofindef)
+    retval = end_sequence_of_no_tagvars_helper(buf, &seqbuf, seqofindef); \
+    if (retval) clean_return(retval)
 
 /*
  * Function body for a pointer decoder, which allocates a pointer