Prevent potential use of uninitialised data in pkcs7 tests

Move the initialisation of the pkcs7 object to before the first possible
test failure, otherwise failure in those tests could result in an
uninitialised pointer being free'd. Found by coverity.

Signed-off-by: Paul Elliott <paul.elliott@arm.com>
This commit is contained in:
Paul Elliott 2023-09-12 11:29:16 +01:00
parent 9b9ac4c6ef
commit 45b6e5e69f

View file

@ -78,6 +78,8 @@ void pkcs7_verify(char *pkcs7_file,
MD_OR_USE_PSA_INIT(); MD_OR_USE_PSA_INIT();
mbedtls_pkcs7_init(&pkcs7);
/* crt_files are space seprated list */ /* crt_files are space seprated list */
for (i = 0; i < strlen(crt_files); i++) { for (i = 0; i < strlen(crt_files); i++) {
if (crt_files[i] == ' ') { if (crt_files[i] == ' ') {
@ -100,7 +102,6 @@ void pkcs7_verify(char *pkcs7_file,
i = k; i = k;
} }
mbedtls_pkcs7_init(&pkcs7);
for (i = 0; i < n_crts; i++) { for (i = 0; i < n_crts; i++) {
TEST_CALLOC(crts[i], 1); TEST_CALLOC(crts[i], 1);
mbedtls_x509_crt_init(crts[i]); mbedtls_x509_crt_init(crts[i]);