From 12df5f3a16a2bc53881b9d88556192dcbc2f6774 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20P=C3=A9gouri=C3=A9-Gonnard?= Date: Mon, 26 May 2025 10:55:59 +0200 Subject: [PATCH] Improve unit tests for mbedtls_asn1_store_named_data MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Every time we check found->val.p we should also check found->val.len. Signed-off-by: Manuel Pégourié-Gonnard --- tests/suites/test_suite_asn1write.function | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/suites/test_suite_asn1write.function b/tests/suites/test_suite_asn1write.function index f5fc025f7d..b1e66ed901 100644 --- a/tests/suites/test_suite_asn1write.function +++ b/tests/suites/test_suite_asn1write.function @@ -550,6 +550,9 @@ void store_named_data_val_found(int old_len, int new_len) } if (new_len == 0) { TEST_ASSERT(found->val.p == NULL); + /* If new_len != 0, then new_val != NULL and the length has been checked + * above by TEST_MEMORY_COMPARE(). But not here, so we need to check. */ + TEST_EQUAL(found->val.len, 0); } else if (new_len == old_len) { TEST_ASSERT(found->val.p == old_val); } else { @@ -583,8 +586,10 @@ void store_named_data_val_new(int new_len, int set_new_val) TEST_MEMORY_COMPARE(found->oid.p, found->oid.len, oid, oid_len); if (new_len == 0) { TEST_ASSERT(found->val.p == NULL); + TEST_EQUAL(found->val.len, 0); } else if (new_val == NULL) { TEST_ASSERT(found->val.p != NULL); + TEST_EQUAL(found->val.len, new_len); } else { TEST_ASSERT(found->val.p != new_val); TEST_MEMORY_COMPARE(found->val.p, found->val.len,