ssl_server2: Add read early data support
Signed-off-by: Jerry Yu <jerry.h.yu@arm.com> Signed-off-by: Ronald Cron <ronald.cron@arm.com>
This commit is contained in:
parent
d9ca354dbd
commit
192e0f9b1d
2 changed files with 15 additions and 0 deletions
|
@ -1612,6 +1612,7 @@ int main(int argc, char *argv[])
|
||||||
#if defined(MBEDTLS_SSL_EARLY_DATA)
|
#if defined(MBEDTLS_SSL_EARLY_DATA)
|
||||||
int tls13_early_data_enabled = MBEDTLS_SSL_EARLY_DATA_DISABLED;
|
int tls13_early_data_enabled = MBEDTLS_SSL_EARLY_DATA_DISABLED;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(MBEDTLS_MEMORY_BUFFER_ALLOC_C)
|
#if defined(MBEDTLS_MEMORY_BUFFER_ALLOC_C)
|
||||||
mbedtls_memory_buffer_alloc_init(alloc_buf, sizeof(alloc_buf));
|
mbedtls_memory_buffer_alloc_init(alloc_buf, sizeof(alloc_buf));
|
||||||
#if defined(MBEDTLS_MEMORY_DEBUG)
|
#if defined(MBEDTLS_MEMORY_DEBUG)
|
||||||
|
@ -3450,6 +3451,19 @@ handshake:
|
||||||
fflush(stdout);
|
fflush(stdout);
|
||||||
|
|
||||||
while ((ret = mbedtls_ssl_handshake(&ssl)) != 0) {
|
while ((ret = mbedtls_ssl_handshake(&ssl)) != 0) {
|
||||||
|
#if defined(MBEDTLS_SSL_EARLY_DATA)
|
||||||
|
if (ret == MBEDTLS_ERR_SSL_RECEIVED_EARLY_DATA) {
|
||||||
|
memset(buf, 0, opt.buffer_size);
|
||||||
|
ret = mbedtls_ssl_read_early_data(&ssl, buf, opt.buffer_size);
|
||||||
|
if (ret > 0) {
|
||||||
|
buf[ret] = '\0';
|
||||||
|
mbedtls_printf(" %d early data bytes read\n\n%s\n",
|
||||||
|
ret, (char *) buf);
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
#endif /* MBEDTLS_SSL_EARLY_DATA */
|
||||||
|
|
||||||
#if defined(MBEDTLS_SSL_ASYNC_PRIVATE)
|
#if defined(MBEDTLS_SSL_ASYNC_PRIVATE)
|
||||||
if (ret == MBEDTLS_ERR_SSL_ASYNC_IN_PROGRESS &&
|
if (ret == MBEDTLS_ERR_SSL_ASYNC_IN_PROGRESS &&
|
||||||
ssl_async_keys.inject_error == SSL_ASYNC_INJECT_ERROR_CANCEL) {
|
ssl_async_keys.inject_error == SSL_ASYNC_INJECT_ERROR_CANCEL) {
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
EarlyData context: line 0 lf
|
EarlyData context: line 0 lf
|
||||||
EarlyData context: line 1 lf
|
EarlyData context: line 1 lf
|
||||||
|
EarlyData context: line 2 lf
|
||||||
EarlyData context: If it appears, that means early_data received.
|
EarlyData context: If it appears, that means early_data received.
|
||||||
|
|
Loading…
Reference in a new issue