TLS context serialization needs an AEAD ciphersuite
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com>
diff --git a/tests/suites/test_suite_ssl.function b/tests/suites/test_suite_ssl.function
index 08ecd67..7d8bf90 100644
--- a/tests/suites/test_suite_ssl.function
+++ b/tests/suites/test_suite_ssl.function
@@ -2858,13 +2858,34 @@
}
/* END_CASE */
-/* BEGIN_CASE depends_on:MBEDTLS_SSL_HANDSHAKE_WITH_CERT_ENABLED:MBEDTLS_PKCS1_V15:MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH:MBEDTLS_SSL_CONTEXT_SERIALIZATION:MBEDTLS_SSL_PROTO_TLS1_2:MBEDTLS_RSA_C:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_SSL_PROTO_DTLS:PSA_WANT_ALG_SHA_256:MBEDTLS_CAN_HANDLE_RSA_TEST_KEY */
+/* BEGIN_CASE depends_on:MBEDTLS_SSL_HANDSHAKE_WITH_CERT_ENABLED:MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH:MBEDTLS_SSL_CONTEXT_SERIALIZATION:MBEDTLS_SSL_PROTO_TLS1_2:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_SSL_PROTO_DTLS:PSA_WANT_ALG_SHA_256:MBEDTLS_TEST_HAS_AEAD_ALG:MBEDTLS_CAN_HANDLE_RSA_TEST_KEY */
void resize_buffers_serialize_mfl(int mfl)
{
+ /* Choose an AEAD ciphersuite */
+ const int *ciphersuites = mbedtls_ssl_list_ciphersuites();
+ const mbedtls_ssl_ciphersuite_t *ciphersuite = NULL;
+ int i = 0;
+ while (ciphersuites[i] != 0) {
+ ciphersuite = mbedtls_ssl_ciphersuite_from_id(ciphersuites[i]);
+
+ if (ciphersuite->min_tls_version == MBEDTLS_SSL_VERSION_TLS1_2) {
+ const mbedtls_ssl_mode_t mode =
+#if defined(MBEDTLS_SSL_SOME_SUITES_USE_CBC_ETM)
+ mbedtls_ssl_get_mode_from_ciphersuite(0, ciphersuite);
+#else
+ mbedtls_ssl_get_mode_from_ciphersuite(ciphersuite);
+#endif
+ if (mode == MBEDTLS_SSL_MODE_AEAD)
+ break;
+ }
+
+ i++;
+ }
+
+ TEST_ASSERT(ciphersuite != NULL);
+
test_resize_buffers(mfl, 0, MBEDTLS_SSL_LEGACY_NO_RENEGOTIATION, 1, 1,
- (char *) "");
- /* The goto below is used to avoid an "unused label" warning.*/
- goto exit;
+ (char *) ciphersuite->name);
}
/* END_CASE */