From: Tomas Mraz Date: Wed, 7 Jun 2023 11:29:01 +0000 (+0200) Subject: Coverity 1529992: Check return value of sscanf() X-Git-Tag: openssl-3.2.0-alpha1~672 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a3fcafb34994c4864d8dc92a88f9d8e354230d12;p=thirdparty%2Fopenssl.git Coverity 1529992: Check return value of sscanf() Also moving the call to setup_tests() where it fits better. --- diff --git a/test/x509_check_cert_pkey_test.c b/test/x509_check_cert_pkey_test.c index c53f566d515..83f4cb563c8 100644 --- a/test/x509_check_cert_pkey_test.c +++ b/test/x509_check_cert_pkey_test.c @@ -107,7 +107,7 @@ failed: } static const char *file; /* path of a cert/CRL/key file in PEM format */ -static const char *num; /* expected number of certs/CRLs/keys included */ +static int expected; /* expected number of certs/CRLs/keys included */ static int test_PEM_X509_INFO_read_bio(void) { @@ -115,13 +115,11 @@ static int test_PEM_X509_INFO_read_bio(void) STACK_OF(X509_INFO) *sk; X509_INFO *it; int i, count = 0; - int expected = 0; if (!TEST_ptr((in = BIO_new_file(file, "r")))) return 0; sk = PEM_X509_INFO_read_bio(in, NULL, NULL, ""); BIO_free(in); - sscanf(num, "%d", &expected); for (i = 0; i < sk_X509_INFO_num(sk); i++) { it = sk_X509_INFO_value(sk, i); if (it->x509 != NULL) @@ -160,9 +158,13 @@ int setup_tests(void) } if (test_get_argument_count() == 2) { + const char *num; /* expected number of certs/CRLs/keys included */ + if (!TEST_ptr(file = test_get_argument(0)) || !TEST_ptr(num = test_get_argument(1))) return 0; + if (!TEST_int_eq(sscanf(num, "%d", &expected), 1)) + return 0; ADD_TEST(test_PEM_X509_INFO_read_bio); return 1; }