1
0
mirror of https://github.com/Mbed-TLS/mbedtls.git synced 2025-07-30 22:43:08 +03:00

tls13: cli: Add mbedtls_ssl_get_early_data_status() API

Add mbedtls_ssl_get_early_data_status() API and its
testing.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
This commit is contained in:
Ronald Cron
2024-02-21 17:03:22 +01:00
parent e21c2d2ce1
commit 9f2c3c09df
2 changed files with 49 additions and 0 deletions

View File

@ -3895,6 +3895,11 @@ void tls13_cli_early_data_status(int scenario)
(ret == MBEDTLS_ERR_SSL_WANT_WRITE));
}
if (client_ep.ssl.state != MBEDTLS_SSL_HANDSHAKE_OVER) {
TEST_EQUAL(mbedtls_ssl_get_early_data_status(&(client_ep.ssl)),
MBEDTLS_ERR_SSL_BAD_INPUT_DATA);
}
switch (client_ep.ssl.state) {
case MBEDTLS_SSL_CLIENT_HELLO:
switch (scenario) {
@ -4116,6 +4121,25 @@ void tls13_cli_early_data_status(int scenario)
}
} while (client_ep.ssl.state != MBEDTLS_SSL_HANDSHAKE_OVER);
ret = mbedtls_ssl_get_early_data_status(&(client_ep.ssl));
switch (scenario) {
case TEST_EARLY_DATA_ACCEPTED:
TEST_EQUAL(ret, MBEDTLS_SSL_EARLY_DATA_STATUS_ACCEPTED);
break;
case TEST_EARLY_DATA_NO_INDICATION_SENT:
TEST_EQUAL(ret, MBEDTLS_SSL_EARLY_DATA_STATUS_NOT_SENT);
break;
case TEST_EARLY_DATA_SERVER_REJECTS: /* Intentional fallthrough */
case TEST_EARLY_DATA_HRR:
TEST_EQUAL(ret, MBEDTLS_SSL_EARLY_DATA_STATUS_REJECTED);
break;
default:
TEST_FAIL("Unknown scenario.");
}
#if defined(MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE)
TEST_EQUAL(client_ep.ssl.handshake->ccs_sent, 1);
#endif