From 8e08f9c5a013d9a9fb9e2db3c90a70eda50f78b5 Mon Sep 17 00:00:00 2001 From: Andrey Tsygunka Date: Wed, 19 Mar 2025 14:53:02 +0300 Subject: [PATCH] Fix NULL pointer dereference in `asn1_ex_i2c()`, crypto/asn1/tasn_enc.c Adds handling of V_ASN1_UNDEF to avoid NULL dereference in case ASN1 structure contains an element of type ASN1_TYPE without initializing its value (i.e. default constructed) CLA: trivial Signed-off-by: Andrey Tsygunka Reviewed-by: Bernd Edlinger Reviewed-by: Paul Dale Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/27100) --- crypto/asn1/tasn_enc.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/crypto/asn1/tasn_enc.c b/crypto/asn1/tasn_enc.c index dab5f9f278f..e0ee7604345 100644 --- a/crypto/asn1/tasn_enc.c +++ b/crypto/asn1/tasn_enc.c @@ -565,6 +565,9 @@ static int asn1_ex_i2c(const ASN1_VALUE **pval, unsigned char *cout, int *putype return -1; break; + case V_ASN1_UNDEF: + return -2; + case V_ASN1_NULL: cont = NULL; len = 0; -- 2.47.2