introduce sent/recv extensions field
And remove `extensions_present`
Signed-off-by: Jerry Yu <jerry.h.yu@arm.com>
diff --git a/library/ssl_client.c b/library/ssl_client.c
index d9c6781..b0d2dcf 100644
--- a/library/ssl_client.c
+++ b/library/ssl_client.c
@@ -106,6 +106,14 @@
*olen = hostname_len + 9;
+#if defined(MBEDTLS_SSL_PROTO_TLS1_3)
+ mbedtls_tls13_set_sent_ext_mask( ssl,
+ MBEDTLS_TLS_EXT_SERVERNAME );
+ MBEDTLS_SSL_DEBUG_MSG(
+ 4, ( "sent %s extension",
+ mbedtls_tls13_get_extension_name(
+ MBEDTLS_TLS_EXT_SERVERNAME ) ) );
+#endif /* MBEDTLS_SSL_PROTO_TLS1_3 */
return( 0 );
}
#endif /* MBEDTLS_SSL_SERVER_NAME_INDICATION */
@@ -177,6 +185,14 @@
/* Extension length = *out_len - 2 (ext_type) - 2 (ext_len) */
MBEDTLS_PUT_UINT16_BE( *out_len - 4, buf, 2 );
+#if defined(MBEDTLS_SSL_PROTO_TLS1_3)
+ mbedtls_tls13_set_sent_ext_mask( ssl,
+ MBEDTLS_TLS_EXT_ALPN );
+ MBEDTLS_SSL_DEBUG_MSG(
+ 4, ( "sent %s extension",
+ mbedtls_tls13_get_extension_name(
+ MBEDTLS_TLS_EXT_ALPN ) ) );
+#endif /* MBEDTLS_SSL_PROTO_TLS1_3 */
return( 0 );
}
#endif /* MBEDTLS_SSL_ALPN */
@@ -296,7 +312,11 @@
*out_len = p - buf;
#if defined(MBEDTLS_SSL_PROTO_TLS1_3)
- ssl->handshake->extensions_present |= MBEDTLS_SSL_EXT_SUPPORTED_GROUPS;
+ mbedtls_tls13_set_sent_ext_mask( ssl,
+ MBEDTLS_TLS_EXT_SUPPORTED_GROUPS );
+ MBEDTLS_SSL_DEBUG_MSG( 4, ( "sent %s extension",
+ mbedtls_tls13_get_extension_name(
+ MBEDTLS_TLS_EXT_SUPPORTED_GROUPS ) ) );
#endif /* MBEDTLS_SSL_PROTO_TLS1_3 */
return( 0 );
@@ -557,7 +577,7 @@
#if defined(MBEDTLS_SSL_PROTO_TLS1_3)
/* Keeping track of the included extensions */
- handshake->extensions_present = MBEDTLS_SSL_EXT_NONE;
+ handshake->sent_extensions = MBEDTLS_SSL_EXT_NONE;
#endif
/* First write extensions, then the total length */