Skip to content

Commit edacf04

Browse files
authored
Merge pull request #8869 from rlm2002/coverityTests
Coverity: parameter checking and NULL assignment
2 parents a7430b3 + 8ab08f7 commit edacf04

File tree

4 files changed

+11
-1
lines changed

4 files changed

+11
-1
lines changed

.wolfssl_known_macro_extras

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -306,6 +306,7 @@ MAXQ_EXPORT_TLS_KEYS
306306
MAXQ_SHA1
307307
MAXSEG_64K
308308
MAX_WOLFSSL_FILE_SIZE
309+
MAX_OID_SZ
309310
MDK_CONF_BARE_METAL
310311
MDK_CONF_FS
311312
MDK_CONF_RTX_TCP_FS

tests/api.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19592,6 +19592,7 @@ static int test_wolfSSL_d2i_ASN1_INTEGER(void)
1959219592
reEncoded = NULL;
1959319593
wolfSSL_ASN1_INTEGER_free(a);
1959419594
a = NULL;
19595+
p2 = NULL;
1959519596
}
1959619597
#endif /* OPENSSL_EXTRA */
1959719598
return EXPECT_RESULT();

wolfcrypt/src/asn.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6856,6 +6856,12 @@ word32 wc_oid_sum(const byte* input, int length)
68566856
int shift = 0;
68576857
#endif
68586858

6859+
/* Check for valid input. */
6860+
if (input == NULL || length > MAX_OID_SZ) {
6861+
WOLFSSL_MSG("wc_oid_sum: invalid args");
6862+
return 0;
6863+
}
6864+
68596865
/* Sum it up for now. */
68606866
for (i = 0; i < length; i++) {
68616867
#ifdef WOLFSSL_OLD_OID_SUM

wolfssl/wolfcrypt/asn.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1145,10 +1145,12 @@ enum Misc_ASN {
11451145
#endif
11461146
/* Max total extensions, id + len + others */
11471147
#endif
1148+
#ifndef MAX_OID_SZ
1149+
MAX_OID_SZ = 32, /* Max DER length of OID*/
1150+
#endif
11481151
#if defined(WOLFSSL_CERT_EXT) || defined(OPENSSL_EXTRA) || \
11491152
defined(HAVE_PKCS7) || defined(OPENSSL_EXTRA_X509_SMALL) || \
11501153
defined(HAVE_OID_DECODING) || defined(HAVE_OID_ENCODING)
1151-
MAX_OID_SZ = 32, /* Max DER length of OID*/
11521154
MAX_OID_STRING_SZ = 64, /* Max string length representation of OID*/
11531155
#endif
11541156
#ifdef WOLFSSL_CERT_EXT

0 commit comments

Comments
 (0)