diff options
author | beck <> | 2002-06-07 03:45:34 +0000 |
---|---|---|
committer | beck <> | 2002-06-07 03:45:34 +0000 |
commit | 820a20ea2b5f97e4a8fb714fedf33edafd40740a (patch) | |
tree | 595b35cf9e1ff104d11fb8ab64ebb6a5c5f42755 /src/lib/libcrypto/asn1/a_enum.c | |
parent | d13d58e31ac54f9b283fe3ec100f31030e050fb4 (diff) | |
download | openbsd-820a20ea2b5f97e4a8fb714fedf33edafd40740a.tar.gz openbsd-820a20ea2b5f97e4a8fb714fedf33edafd40740a.tar.bz2 openbsd-820a20ea2b5f97e4a8fb714fedf33edafd40740a.zip |
Merge OpenSSL 0.9.7-stable-20020605,
correctly autogenerate obj_mac.h
Diffstat (limited to '')
-rw-r--r-- | src/lib/libcrypto/asn1/a_enum.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/lib/libcrypto/asn1/a_enum.c b/src/lib/libcrypto/asn1/a_enum.c index 8a315fa371..ad8f0ffd1a 100644 --- a/src/lib/libcrypto/asn1/a_enum.c +++ b/src/lib/libcrypto/asn1/a_enum.c | |||
@@ -151,7 +151,17 @@ ASN1_ENUMERATED *BN_to_ASN1_ENUMERATED(BIGNUM *bn, ASN1_ENUMERATED *ai) | |||
151 | else ret->type=V_ASN1_ENUMERATED; | 151 | else ret->type=V_ASN1_ENUMERATED; |
152 | j=BN_num_bits(bn); | 152 | j=BN_num_bits(bn); |
153 | len=((j == 0)?0:((j/8)+1)); | 153 | len=((j == 0)?0:((j/8)+1)); |
154 | ret->data=(unsigned char *)OPENSSL_malloc(len+4); | 154 | if (ret->length < len+4) |
155 | { | ||
156 | unsigned char *new_data=OPENSSL_realloc(ret->data, len+4); | ||
157 | if (!new_data) | ||
158 | { | ||
159 | ASN1err(ASN1_F_BN_TO_ASN1_INTEGER,ERR_R_MALLOC_FAILURE); | ||
160 | goto err; | ||
161 | } | ||
162 | ret->data=new_data; | ||
163 | } | ||
164 | |||
155 | ret->length=BN_bn2bin(bn,ret->data); | 165 | ret->length=BN_bn2bin(bn,ret->data); |
156 | return(ret); | 166 | return(ret); |
157 | err: | 167 | err: |