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:
@ -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
|
||||
|
Reference in New Issue
Block a user