mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2026-03-06 23:04:03 +01:00
Merge remote-tracking branch 'upstream/master' into zd20595
This commit is contained in:
@@ -1247,7 +1247,8 @@ int test_dtls_record_cross_boundaries(void)
|
||||
}
|
||||
#endif /* defined(HAVE_MANUAL_MEMIO_TESTS_DEPENDENCIES) && defined(WOLFSSL_DTLS) */
|
||||
|
||||
#if defined(HAVE_MANUAL_MEMIO_TESTS_DEPENDENCIES) && !defined(WOLFSSL_NO_TLS12)
|
||||
#if defined(HAVE_MANUAL_MEMIO_TESTS_DEPENDENCIES) && \
|
||||
!defined(WOLFSSL_NO_TLS12) && !defined(NO_SHA256)
|
||||
/* This test that the DTLS record boundary check doesn't interfere with TLS
|
||||
* records processing */
|
||||
int test_records_span_network_boundaries(void)
|
||||
@@ -1637,3 +1638,65 @@ int test_dtls_srtp(void)
|
||||
return EXPECT_RESULT();
|
||||
}
|
||||
#endif
|
||||
|
||||
int test_dtls_timeout(void)
|
||||
{
|
||||
EXPECT_DECLS;
|
||||
#if defined(HAVE_MANUAL_MEMIO_TESTS_DEPENDENCIES) && defined(WOLFSSL_DTLS)
|
||||
size_t i;
|
||||
struct {
|
||||
method_provider client_meth;
|
||||
method_provider server_meth;
|
||||
} params[] = {
|
||||
#if defined(WOLFSSL_TLS13) && defined(WOLFSSL_DTLS13)
|
||||
{ wolfDTLSv1_3_client_method, wolfDTLSv1_3_server_method },
|
||||
#endif
|
||||
#if !defined(WOLFSSL_NO_TLS12) && defined(WOLFSSL_DTLS)
|
||||
{ wolfDTLSv1_2_client_method, wolfDTLSv1_2_server_method },
|
||||
#endif
|
||||
#if !defined(NO_OLD_TLS) && defined(WOLFSSL_DTLS)
|
||||
{ wolfDTLSv1_client_method, wolfDTLSv1_server_method },
|
||||
#endif
|
||||
};
|
||||
|
||||
for (i = 0; i < XELEM_CNT(params) && !EXPECT_FAIL(); i++) {
|
||||
WOLFSSL_CTX *ctx_c = NULL, *ctx_s = NULL;
|
||||
WOLFSSL *ssl_c = NULL, *ssl_s = NULL;
|
||||
struct test_memio_ctx test_ctx;
|
||||
|
||||
XMEMSET(&test_ctx, 0, sizeof(test_ctx));
|
||||
|
||||
ExpectIntEQ(test_memio_setup(&test_ctx, &ctx_c, &ctx_s, &ssl_c, &ssl_s,
|
||||
params[i].client_meth, params[i].server_meth), 0);
|
||||
ExpectIntEQ(wolfSSL_dtls_set_timeout_max(ssl_c, 2), WOLFSSL_SUCCESS);
|
||||
ExpectIntEQ(wolfSSL_negotiate(ssl_c), -1);
|
||||
ExpectIntEQ(wolfSSL_get_error(ssl_c, -1), WOLFSSL_ERROR_WANT_READ);
|
||||
#if defined(WOLFSSL_TLS13) && defined(WOLFSSL_DTLS13)
|
||||
/* will return 0 when not 1.3 */
|
||||
if (wolfSSL_dtls13_use_quick_timeout(ssl_c))
|
||||
ExpectIntEQ(wolfSSL_dtls_got_timeout(ssl_c), WOLFSSL_SUCCESS);
|
||||
#endif
|
||||
ExpectIntEQ(wolfSSL_dtls_got_timeout(ssl_c), WOLFSSL_SUCCESS);
|
||||
ExpectIntEQ(wolfSSL_dtls_get_current_timeout(ssl_c), 2);
|
||||
ExpectIntEQ(wolfSSL_negotiate(ssl_s), -1);
|
||||
ExpectIntEQ(wolfSSL_get_error(ssl_s, -1), WOLFSSL_ERROR_WANT_READ);
|
||||
ExpectIntEQ(wolfSSL_negotiate(ssl_c), -1);
|
||||
ExpectIntEQ(wolfSSL_get_error(ssl_c, -1), WOLFSSL_ERROR_WANT_READ);
|
||||
ExpectIntEQ(wolfSSL_dtls_get_current_timeout(ssl_c), 1);
|
||||
#if defined(WOLFSSL_TLS13) && defined(WOLFSSL_DTLS13)
|
||||
/* will return 0 when not 1.3 */
|
||||
if (wolfSSL_dtls13_use_quick_timeout(ssl_c))
|
||||
ExpectIntEQ(wolfSSL_dtls_got_timeout(ssl_c), WOLFSSL_SUCCESS);
|
||||
#endif
|
||||
ExpectIntEQ(wolfSSL_dtls_got_timeout(ssl_c), WOLFSSL_SUCCESS);
|
||||
ExpectIntEQ(wolfSSL_dtls_get_current_timeout(ssl_c), 2);
|
||||
ExpectIntEQ(test_memio_do_handshake(ssl_c, ssl_s, 10, NULL), 0);
|
||||
|
||||
wolfSSL_free(ssl_s);
|
||||
wolfSSL_free(ssl_c);
|
||||
wolfSSL_CTX_free(ctx_s);
|
||||
wolfSSL_CTX_free(ctx_c);
|
||||
}
|
||||
#endif
|
||||
return EXPECT_RESULT();
|
||||
}
|
||||
|
||||
@@ -41,4 +41,5 @@ int test_dtls_drop_client_ack(void);
|
||||
int test_dtls_bogus_finished_epoch_zero(void);
|
||||
int test_dtls_replay(void);
|
||||
int test_dtls_srtp(void);
|
||||
int test_dtls_timeout(void);
|
||||
#endif /* TESTS_API_DTLS_H */
|
||||
|
||||
@@ -42,7 +42,7 @@ int test_wc_i2d_PKCS12(void)
|
||||
EXPECT_DECLS;
|
||||
#if !defined(NO_ASN) && !defined(NO_PWDBASED) && defined(HAVE_PKCS12) \
|
||||
&& !defined(NO_FILESYSTEM) && !defined(NO_RSA) \
|
||||
&& !defined(NO_AES) && !defined(NO_SHA)
|
||||
&& !defined(NO_AES) && !defined(NO_SHA) && !defined(NO_SHA256)
|
||||
WC_PKCS12* pkcs12 = NULL;
|
||||
unsigned char der[FOURK_BUF * 2];
|
||||
unsigned char* pt;
|
||||
@@ -163,6 +163,7 @@ int test_wc_PKCS12_create(void)
|
||||
{
|
||||
EXPECT_DECLS;
|
||||
|
||||
#ifndef NO_SHA256
|
||||
EXPECT_TEST(test_wc_PKCS12_create_once(-1, -1));
|
||||
#if !defined(NO_RC4) && !defined(NO_SHA)
|
||||
EXPECT_TEST(test_wc_PKCS12_create_once(PBE_SHA1_RC4_128, PBE_SHA1_RC4_128));
|
||||
@@ -187,6 +188,7 @@ int test_wc_PKCS12_create(void)
|
||||
#if defined(HAVE_AES_CBC) && !defined(NO_AES) && !defined(NO_AES_256) && \
|
||||
!defined(NO_SHA) && defined(WOLFSSL_ASN_TEMPLATE) && !defined(NO_DES3)
|
||||
EXPECT_TEST(test_wc_PKCS12_create_once(PBE_AES256_CBC, PBE_SHA1_DES3));
|
||||
#endif
|
||||
#endif
|
||||
|
||||
(void) test_wc_PKCS12_create_once;
|
||||
|
||||
@@ -2163,10 +2163,10 @@ int test_wc_PKCS7_DecodeEnvelopedData_multiple_recipients(void)
|
||||
byte decodedData[8192];
|
||||
|
||||
ExpectTrue((f = XFOPEN(testFile, "rb")) != XBADFILE);
|
||||
testDerBufferSz = XFREAD(testDerBuffer, 1,
|
||||
sizeof(testDerBuffer), f);
|
||||
ExpectIntNE(testDerBufferSz, 0);
|
||||
if (f != XBADFILE) {
|
||||
testDerBufferSz = XFREAD(testDerBuffer, 1,
|
||||
sizeof(testDerBuffer), f);
|
||||
ExpectIntGT(testDerBufferSz, 0);
|
||||
XFCLOSE(f);
|
||||
f = XBADFILE;
|
||||
}
|
||||
@@ -2188,6 +2188,7 @@ int test_wc_PKCS7_DecodeEnvelopedData_multiple_recipients(void)
|
||||
ExpectIntGT(ret, 0);
|
||||
#endif
|
||||
wc_PKCS7_Free(pkcs7);
|
||||
pkcs7 = NULL;
|
||||
}
|
||||
|
||||
/* test with client cert recipient */
|
||||
@@ -2207,6 +2208,7 @@ int test_wc_PKCS7_DecodeEnvelopedData_multiple_recipients(void)
|
||||
ExpectIntGT(ret, 0);
|
||||
#endif
|
||||
wc_PKCS7_Free(pkcs7);
|
||||
pkcs7 = NULL;
|
||||
}
|
||||
|
||||
/* test with ca cert recipient (which should fail) */
|
||||
@@ -2222,6 +2224,7 @@ int test_wc_PKCS7_DecodeEnvelopedData_multiple_recipients(void)
|
||||
(word32)testDerBufferSz, decodedData, sizeof(decodedData));
|
||||
ExpectIntLT(ret, 0);
|
||||
wc_PKCS7_Free(pkcs7);
|
||||
pkcs7 = NULL;
|
||||
}
|
||||
|
||||
return EXPECT_RESULT();
|
||||
|
||||
@@ -106,8 +106,9 @@ int test_wc_RsaPrivateKeyDecode(void)
|
||||
int test_wc_RsaPublicKeyDecode(void)
|
||||
{
|
||||
EXPECT_DECLS;
|
||||
#if !defined(NO_RSA) && (defined(USE_CERT_BUFFERS_1024) || \
|
||||
defined(USE_CERT_BUFFERS_2048)) && !defined(HAVE_FIPS)
|
||||
#if !defined(NO_RSA) && !defined(NO_SHA256) && \
|
||||
(defined(USE_CERT_BUFFERS_1024) || defined(USE_CERT_BUFFERS_2048)) && \
|
||||
!defined(HAVE_FIPS)
|
||||
RsaKey keyPub;
|
||||
byte* tmp = NULL;
|
||||
word32 idx = 0;
|
||||
|
||||
Reference in New Issue
Block a user