summaryrefslogtreecommitdiff
path: root/source3/libsmb/asn1.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2002-08-19 15:30:26 +0000
committerAndrew Tridgell <tridge@samba.org>2002-08-19 15:30:26 +0000
commite38148f78ca631dcbc8a09616c2c91e5ec64c670 (patch)
tree4969477dfdb4ea420f4967ee958e45fb6f003c22 /source3/libsmb/asn1.c
parent53a4d9a47039a567e0599b0ec3ee9d589d035e30 (diff)
downloadsamba-e38148f78ca631dcbc8a09616c2c91e5ec64c670.tar.gz
samba-e38148f78ca631dcbc8a09616c2c91e5ec64c670.tar.bz2
samba-e38148f78ca631dcbc8a09616c2c91e5ec64c670.zip
we now receive and parse the main cldap netlogon reply.
we still need to parse the core of the structure (This used to be commit 6780ae25bf7ca291f612682dec7ee7ff44c24bef)
Diffstat (limited to 'source3/libsmb/asn1.c')
-rw-r--r--source3/libsmb/asn1.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/source3/libsmb/asn1.c b/source3/libsmb/asn1.c
index c8f832f3df..358c23c146 100644
--- a/source3/libsmb/asn1.c
+++ b/source3/libsmb/asn1.c
@@ -254,15 +254,12 @@ BOOL asn1_start_tag(ASN1_DATA *data, uint8 tag)
asn1_read_uint8(data, &b);
if (b & 0x80) {
int n = b & 0x7f;
- if (n > 2) {
- data->has_error = True;
- return False;
- }
asn1_read_uint8(data, &b);
nesting->taglen = b;
- if (n == 2) {
+ while (n > 1) {
asn1_read_uint8(data, &b);
nesting->taglen = (nesting->taglen << 8) | b;
+ n--;
}
} else {
nesting->taglen = b;