diff options
author | Theodore Tso <tytso@mit.edu> | 1995-11-09 01:03:32 +0000 |
---|---|---|
committer | Theodore Tso <tytso@mit.edu> | 1995-11-09 01:03:32 +0000 |
commit | e8d6f2d6df42a036824d1c93c98a0d6bbbb8d8c7 (patch) | |
tree | 68edf6fa623ed83994258f6943a99cc71c127a00 | |
parent | 072512723591c4d25f6c55165130b7eb8d9dc4c9 (diff) | |
download | krb5-e8d6f2d6df42a036824d1c93c98a0d6bbbb8d8c7.tar.gz krb5-e8d6f2d6df42a036824d1c93c98a0d6bbbb8d8c7.tar.xz krb5-e8d6f2d6df42a036824d1c93c98a0d6bbbb8d8c7.zip |
* asn1_k_decode.c (asn1_decode_etype_info_entry): If the optional
salt element is not present, set etype.length to -1.
* asn1_k_encode.c (asn1_encode_etype_info_entry): When encoding
the etype_info_entry structure, use length == -1 to mean
that the optional salt structure should not be sent. (It
used to be if length == -1.)
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@7067 dc483132-0cff-0310-8789-dd5450dbe970
-rw-r--r-- | src/lib/krb5/asn.1/ChangeLog | 10 | ||||
-rw-r--r-- | src/lib/krb5/asn.1/asn1_k_decode.c | 2 | ||||
-rw-r--r-- | src/lib/krb5/asn.1/asn1_k_encode.c | 4 |
3 files changed, 13 insertions, 3 deletions
diff --git a/src/lib/krb5/asn.1/ChangeLog b/src/lib/krb5/asn.1/ChangeLog index 8ddcdbe17..09d37294f 100644 --- a/src/lib/krb5/asn.1/ChangeLog +++ b/src/lib/krb5/asn.1/ChangeLog @@ -1,3 +1,13 @@ +Wed Nov 8 20:00:13 1995 Theodore Y. Ts'o <tytso@dcl> + + * asn1_k_decode.c (asn1_decode_etype_info_entry): If the optional + salt element is not present, set etype.length to -1. + + * asn1_k_encode.c (asn1_encode_etype_info_entry): When encoding + the etype_info_entry structure, use length == -1 to mean + that the optional salt structure should not be sent. (It + used to be if length == -1.) + Tue Oct 31 20:06:49 1995 Theodore Y. Ts'o <tytso@dcl> * krb5_decode.c (decode_krb5_pa_enc_ts, decode_krb5_enc_data): diff --git a/src/lib/krb5/asn.1/asn1_k_decode.c b/src/lib/krb5/asn.1/asn1_k_decode.c index 93db3055e..ff985fbf5 100644 --- a/src/lib/krb5/asn.1/asn1_k_decode.c +++ b/src/lib/krb5/asn.1/asn1_k_decode.c @@ -665,7 +665,7 @@ asn1_error_code asn1_decode_etype_info_entry(buf, val) if (tagnum == 1) { get_lenfield(val->length,val->salt,1,asn1_decode_octetstring); } else { - val->length = 0; + val->length = -1; val->salt = 0; } end_structure(); diff --git a/src/lib/krb5/asn.1/asn1_k_encode.c b/src/lib/krb5/asn.1/asn1_k_encode.c index c2b928327..9702f5e3d 100644 --- a/src/lib/krb5/asn.1/asn1_k_encode.c +++ b/src/lib/krb5/asn.1/asn1_k_encode.c @@ -774,10 +774,10 @@ asn1_error_code asn1_encode_etype_info_entry(buf, val, retlen) { asn1_setup(); - if(val == NULL || (val->length != 0 && val->salt == NULL)) + if(val == NULL || (val->length >= 0 && val->salt == NULL)) return ASN1_MISSING_FIELD; - if (val->length) + if (val->length >= 0) asn1_addlenfield((int) val->length,val->salt,1, asn1_encode_octetstring); asn1_addfield(val->etype,0,asn1_encode_integer); |