diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/krb5/asn.1/ChangeLog | 5 | ||||
| -rw-r--r-- | src/lib/krb5/asn.1/asn1buf.c | 10 |
2 files changed, 14 insertions, 1 deletions
diff --git a/src/lib/krb5/asn.1/ChangeLog b/src/lib/krb5/asn.1/ChangeLog index caeecfe630..33940ce205 100644 --- a/src/lib/krb5/asn.1/ChangeLog +++ b/src/lib/krb5/asn.1/ChangeLog @@ -1,3 +1,8 @@ +1999-06-30 Tom Yu <tlyu@mit.edu> + + * asn1buf.c (asn1buf_sync): Interim fix for DCE compat problem + with indefinite length encodings. + 1999-06-15 Tom Yu <tlyu@mit.edu> * asn1_encode.c (asn1_encode_generaltime): Fix minor bug in diff --git a/src/lib/krb5/asn.1/asn1buf.c b/src/lib/krb5/asn.1/asn1buf.c index 52ac387d50..785b140918 100644 --- a/src/lib/krb5/asn.1/asn1buf.c +++ b/src/lib/krb5/asn.1/asn1buf.c @@ -93,7 +93,15 @@ void asn1buf_sync(buf, subbuf) asn1buf * buf; asn1buf * subbuf; { - buf->next = subbuf->bound + 1; + if (subbuf->bound != buf->bound) { + buf->next = subbuf->bound + 1; + } else { + /* + * indefinite length; this will suck + * XXX - need to skip fields somehow + */ + buf->next = subbuf->next; + } } asn1_error_code asn1buf_destroy(buf) |
