a ASN.1 fix from anthony
authorAndrew Tridgell <tridge@samba.org>
Thu, 22 Aug 2002 22:53:00 +0000 (22:53 +0000)
committerAndrew Tridgell <tridge@samba.org>
Thu, 22 Aug 2002 22:53:00 +0000 (22:53 +0000)
(This used to be commit 5ff687a839f805af56ae77cba94c466a0ff87ccc)

source3/libsmb/asn1.c

index 358c23c14656c8c13a3a2f5f07f549d0830b8bca..b7cfca41fbf19facfeadde3688cf38a493d09e21 100644 (file)
@@ -373,6 +373,7 @@ BOOL asn1_read_GeneralString(ASN1_DATA *data, char **s)
 BOOL asn1_read_OctetString(ASN1_DATA *data, DATA_BLOB *blob)
 {
        int len;
+       ZERO_STRUCTP(blob);
        if (!asn1_start_tag(data, ASN1_OCTET_STRING)) return False;
        len = asn1_tag_remaining(data);
        *blob = data_blob(NULL, len);
@@ -389,7 +390,8 @@ BOOL asn1_read_Integer(ASN1_DATA *data, int *i)
        
        if (!asn1_start_tag(data, ASN1_INTEGER)) return False;
        while (asn1_tag_remaining(data)>0) {
-               *i = (*i << 8) + asn1_read_uint8(data, &b);
+               asn1_read_uint8(data, &b);
+               *i = (*i << 8) + b;
        }
        return asn1_end_tag(data);