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 19:38:21 -0400 |
commit | e6c53b0ced916633c8038736fde5613bf5b3e0dc (patch) | |
tree | 43d6c92587a6d9a9e9255b629610394f6b3727bc | |
parent | 04cf39207f94abf89b3964c7710f22f829a1a78f (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)
(cherry picked from commit 29d1fad78899e5ae2997b19937a175784b21c996)
-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 f28acab34e..b99269e7f8 100644 --- a/crypto/x509v3/v3_cpols.c +++ b/crypto/x509v3/v3_cpols.c @@ -458,9 +458,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"); } |