]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
fuzz/asn1.c: Add check for ASN1_item_i2d
authorJiasheng Jiang <jiasheng@iscas.ac.cn>
Fri, 24 Jun 2022 07:35:05 +0000 (15:35 +0800)
committerTomas Mraz <tomas@openssl.org>
Tue, 28 Jun 2022 15:10:11 +0000 (17:10 +0200)
As the potential failure of the ASN1_item_i2d,
it should be better to check the return value.

Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/18647)

fuzz/asn1.c

index 69978cd05436641998c14bb694a71e43236a8427..ee602a08a3d91230c05ed32340b074d668f5a13f 100644 (file)
@@ -317,8 +317,9 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
                 ASN1_item_print(bio, o, 4, i, pctx);
                 BIO_free(bio);
             }
-            ASN1_item_i2d(o, &der, i);
-            OPENSSL_free(der);
+            if (ASN1_item_i2d(o, &der, i) > 0) {
+                OPENSSL_free(der);
+            }
             ASN1_item_free(o, i);
         }
     }