asn1_k_decode.c (setup, next_tag, apptag, get_field_body,
authorTheodore Tso <tytso@mit.edu>
Thu, 13 Apr 1995 16:35:42 +0000 (16:35 +0000)
committerTheodore Tso <tytso@mit.edu>
Thu, 13 Apr 1995 16:35:42 +0000 (16:35 +0000)
commit73bd684de42505fe4e6a15803ddf074c57db671c
tree2ba54a91d188f3622a7237bf5a7bf26c92232fd0
parentdc6f3c3836d63a93ff5820aad902e7e76d5eedfb
asn1_k_decode.c (setup, next_tag, apptag, get_field_body,
get_lenfield_body, asn1_decode_ticket): Use the taglength to
determine whether or not the indefinite encoding was used, and
if so skip over the termination flag bytes in the ASN.1
stream.

asn1buf.c (asn1buf_imbed, asn1buf_remains): Make changes to allow for
indefinite encodings.  asn1buf_remains() is now only used for
decoding structures and arrays (i.e., asn.1 constructs which
terminate indefinite encodings with two zero octets.

[ Note these fixes to support indefinite encoding aren't
terribly clean; some invalid encodings may be accepted when they
should not be.  This should be looked at in more detail later.]

asn1_get.c (asn1_get_tag): Inline original asn1buf_remains() code,
since asn1_get_tag doesn't use asn1buf_remains in the context of
a structure or an array.

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@5353 dc483132-0cff-0310-8789-dd5450dbe970
src/lib/krb5/asn.1/ChangeLog
src/lib/krb5/asn.1/asn1_get.c
src/lib/krb5/asn.1/asn1_k_decode.c
src/lib/krb5/asn.1/asn1buf.c
src/lib/krb5/asn.1/asn1buf.h