diff options
Diffstat (limited to 'src/lib/libcrypto/asn1/a_strnid.c')
| -rw-r--r-- | src/lib/libcrypto/asn1/a_strnid.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/lib/libcrypto/asn1/a_strnid.c b/src/lib/libcrypto/asn1/a_strnid.c index be28885363..4da45c537e 100644 --- a/src/lib/libcrypto/asn1/a_strnid.c +++ b/src/lib/libcrypto/asn1/a_strnid.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: a_strnid.c,v 1.17 2014/07/11 08:44:47 jsing Exp $ */ | 1 | /* $OpenBSD: a_strnid.c,v 1.18 2014/10/28 05:46:55 miod Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 1999. | 3 | * project 1999. |
| 4 | */ | 4 | */ |
| @@ -261,8 +261,14 @@ ASN1_STRING_TABLE_add(int nid, long minsize, long maxsize, unsigned long mask, | |||
| 261 | if (maxsize != -1) | 261 | if (maxsize != -1) |
| 262 | tmp->maxsize = maxsize; | 262 | tmp->maxsize = maxsize; |
| 263 | tmp->mask = mask; | 263 | tmp->mask = mask; |
| 264 | if (new_nid) | 264 | if (new_nid) { |
| 265 | sk_ASN1_STRING_TABLE_push(stable, tmp); | 265 | if (sk_ASN1_STRING_TABLE_push(stable, tmp) == 0) { |
| 266 | free(tmp); | ||
| 267 | ASN1err(ASN1_F_ASN1_STRING_TABLE_ADD, | ||
| 268 | ERR_R_MALLOC_FAILURE); | ||
| 269 | return 0; | ||
| 270 | } | ||
| 271 | } | ||
| 266 | return 1; | 272 | return 1; |
| 267 | } | 273 | } |
| 268 | 274 | ||
