Merge pull request #7083 from douzzer/20231219-clang-analyzer-optin.core.EnumCastOutOfRange

20231219-clang-analyzer-optin.core.EnumCastOutOfRange
This commit is contained in:
David Garske 2023-12-20 14:18:06 -08:00 committed by GitHub
commit a5464a9b51
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 8 additions and 1 deletions

View File

@ -16393,7 +16393,7 @@ int wolfSSL_set_compression(WOLFSSL* ssl)
/* cast so that compiler reminds us of unimplemented values */
switch ((enum SignatureAlgorithm)sigType) {
case anonymous_sa_algo:
*sigAlgo = (enum Key_Sum)0;
*sigAlgo = ANONk;
break;
case rsa_sa_algo:
*sigAlgo = RSAk;

View File

@ -29064,7 +29064,9 @@ static int test_wc_SignatureGetSize_ecc(void)
ExpectIntGT(wc_SignatureGetSize(sig_type, &ecc, key_len), 0);
/* Test bad args */
/* // NOLINTBEGIN(clang-analyzer-optin.core.EnumCastOutOfRange) */
sig_type = (enum wc_SignatureType) 100;
/* // NOLINTEND(clang-analyzer-optin.core.EnumCastOutOfRange) */
ExpectIntEQ(wc_SignatureGetSize(sig_type, &ecc, key_len), BAD_FUNC_ARG);
sig_type = WC_SIGNATURE_TYPE_ECC;
ExpectIntEQ(wc_SignatureGetSize(sig_type, NULL, key_len), 0);
@ -29129,7 +29131,9 @@ static int test_wc_SignatureGetSize_rsa(void)
ExpectIntGT(wc_SignatureGetSize(sig_type, &rsa_key, key_len), 0);
/* Test bad args */
/* // NOLINTBEGIN(clang-analyzer-optin.core.EnumCastOutOfRange) */
sig_type = (enum wc_SignatureType)100;
/* // NOLINTEND(clang-analyzer-optin.core.EnumCastOutOfRange) */
ExpectIntEQ(wc_SignatureGetSize(sig_type, &rsa_key, key_len), BAD_FUNC_ARG);
sig_type = WC_SIGNATURE_TYPE_RSA;
#ifndef HAVE_USER_RSA

View File

@ -128,9 +128,11 @@ static void test_SrpInit(void)
/* invalid params */
AssertIntEQ(BAD_FUNC_ARG, wc_SrpInit(NULL, SRP_TYPE_TEST_DEFAULT,
SRP_CLIENT_SIDE));
/* // NOLINTBEGIN(clang-analyzer-optin.core.EnumCastOutOfRange) */
AssertIntEQ(BAD_FUNC_ARG, wc_SrpInit(&srp, (SrpType)255, SRP_CLIENT_SIDE));
AssertIntEQ(BAD_FUNC_ARG, wc_SrpInit(&srp, SRP_TYPE_TEST_DEFAULT,
(SrpSide)255));
/* // NOLINTEND(clang-analyzer-optin.core.EnumCastOutOfRange) */
/* success */
AssertIntEQ(0, wc_SrpInit(&srp, SRP_TYPE_TEST_DEFAULT, SRP_CLIENT_SIDE));

View File

@ -1124,6 +1124,7 @@ enum Block_Sum {
enum Key_Sum {
ANONk = 0,
DSAk = 515,
RSAk = 645,
RSAPSSk = 654,