diff options
author | Bernd Edlinger <bernd.edlinger@hotmail.de> | 2017-03-14 15:10:52 +0100 |
---|---|---|
committer | Rich Salz <rsalz@openssl.org> | 2017-03-15 17:32:28 -0400 |
commit | 29d1fad78899e5ae2997b19937a175784b21c996 (patch) | |
tree | 8eed992680cb34013ee3268ee01acae3056e3dbf /crypto/x509v3 | |
parent | dda12ce4e5c75da95088a1dc81815b80ec18821d (diff) |
Fixed a crash in print_notice.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2935)
Diffstat (limited to 'crypto/x509v3')
-rw-r--r-- | crypto/x509v3/v3_cpols.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/crypto/x509v3/v3_cpols.c b/crypto/x509v3/v3_cpols.c index f717e132d4..22c56ba380 100644 --- a/crypto/x509v3/v3_cpols.c +++ b/crypto/x509v3/v3_cpols.c @@ -413,9 +413,15 @@ static void print_notice(BIO *out, USERNOTICE *notice, int indent) num = sk_ASN1_INTEGER_value(ref->noticenos, i); if (i) BIO_puts(out, ", "); - tmp = i2s_ASN1_INTEGER(NULL, num); - BIO_puts(out, tmp); - OPENSSL_free(tmp); + if (num == NULL) + BIO_puts(out, "(null)"); + else { + tmp = i2s_ASN1_INTEGER(NULL, num); + if (tmp == NULL) + return; + BIO_puts(out, tmp); + OPENSSL_free(tmp); + } } BIO_puts(out, "\n"); } |