Return error when trying to print invalid ASN1 integer
authorKurt Roeckx <kurt@roeckx.be>
Sat, 16 Jul 2016 14:56:54 +0000 (16:56 +0200)
committerKurt Roeckx <kurt@roeckx.be>
Sat, 16 Jul 2016 19:51:49 +0000 (21:51 +0200)
Reviewed-by: Rich Salz <rsalz@openssl.org>
GH: #1322

crypto/asn1/tasn_prn.c

index 9f4c81e0050233d5808d1e1437ae54985fe5291f..930ef97a9e9554d8875df8f2f16b5d1ea8f2e89c 100644 (file)
@@ -393,6 +393,8 @@ static int asn1_print_integer(BIO *out, ASN1_INTEGER *str)
     char *s;
     int ret = 1;
     s = i2s_ASN1_INTEGER(NULL, str);
+    if (s == NULL)
+        return 0;
     if (BIO_puts(out, s) <= 0)
         ret = 0;
     OPENSSL_free(s);