Module Name: krb5 Committed By: raeburn Date: Wed Mar 12 04:33:31 UTC 2003 Modified Files: krb5/src/lib/krb5/asn.1/ChangeLog krb5/src/lib/krb5/asn.1/asn1_decode.c krb5/src/lib/krb5/asn.1/asn1_get.c krb5/src/lib/krb5/asn.1/asn1_get.h krb5/src/lib/krb5/asn.1/asn1_k_decode.c krb5/src/lib/krb5/asn.1/asn1buf.c krb5/src/lib/krb5/asn.1/krb5_decode.c Added Files: Removed Files: Log Message Rewrite asn1_get_tag interface to use a structure pointer rather than several pointer variables for the returned data. Use the structure in the caller when straightforward; in cases where macros use different but overlapping sets of automatic scalar variables in one file, copy the values out of the structures for now, until they can be analyzed more carefully. * asn1_get.c (asn1_get_tag): Deleted. (asn1_get_tag_2): Renamed from asn1_get_tag_indef, now uses a pointer to taginfo rather than a bunch of pointer args. (asn1_get_id, asn1_get_length): Folded into asn1_get_tag_2. (asn1_get_sequence): Call asn1_get_tag_2. * asn1_get.h (taginfo): New structure. (asn1_get_tag_indef, asn1_get_tag, asn1_get_id, asn1_get_length): Declarations deleted. (asn1_get_tag_2): Declare. * asn1_decode.c (setup): Declare only a taginfo variable. (asn1class, construction, tagnum, length): New macros. (tag): Call asn1_get_tag_2. * asn1_k_decode.c (next_tag, get_eoc, apptag, end_sequence_of, end_sequence_of_no_tagvars, asn1_decode_krb5_flags): Call asn1_get_tag_2; if no error, copy out values into scalar variables. (asn1_decode_ticket): Call asn1_get_tag_2. * asn1buf.c (asn1buf_skiptail): Call asn1_get_tag_2. * krb5_decode.c (check_apptag, next_tag, get_eoc): Call asn1_get_tag_2; if no error, copy out values into scalar variables. (decode_krb5_enc_kdc_rep_part): Call asn1_get_tag_2. To generate a diff of this commit: cvs diff -r5.134 -r5.135 krb5/src/lib/krb5/asn.1/ChangeLog cvs diff -r5.20 -r5.21 krb5/src/lib/krb5/asn.1/asn1_decode.c cvs diff -r5.16 -r5.17 krb5/src/lib/krb5/asn.1/asn1_get.c cvs diff -r5.10 -r5.11 krb5/src/lib/krb5/asn.1/asn1_get.h cvs diff -r5.42 -r5.43 krb5/src/lib/krb5/asn.1/asn1_k_decode.c cvs diff -r5.23 -r5.24 krb5/src/lib/krb5/asn.1/asn1buf.c cvs diff -r5.39 -r5.40 krb5/src/lib/krb5/asn.1/krb5_decode.c