diff --git a/library/ssl_misc.h b/library/ssl_misc.h index d9759af6c6..4ccfbc52d5 100644 --- a/library/ssl_misc.h +++ b/library/ssl_misc.h @@ -1523,6 +1523,14 @@ void mbedtls_ssl_tls13_add_hs_hdr_to_checksum( mbedtls_ssl_context *ssl, unsigned hs_type, size_t total_hs_len ); +/* + * Update checksum of handshake message + */ +void mbedtls_ssl_tls13_add_hs_msg_to_checksum( mbedtls_ssl_context *ssl, + unsigned hs_type, + unsigned char const *msg, + size_t msg_len ); + /* Get handshake transcript */ int mbedtls_ssl_tls13_get_handshake_transcript( mbedtls_ssl_context *ssl, const mbedtls_md_type_t md, diff --git a/library/ssl_tls13_generic.c b/library/ssl_tls13_generic.c index 5c20f29283..bac11787d8 100644 --- a/library/ssl_tls13_generic.c +++ b/library/ssl_tls13_generic.c @@ -66,6 +66,15 @@ cleanup: return( ret ); } +void mbedtls_ssl_tls13_add_hs_msg_to_checksum( mbedtls_ssl_context *ssl, + unsigned hs_type, + unsigned char const *msg, + size_t msg_len ) +{ + mbedtls_ssl_tls13_add_hs_hdr_to_checksum( ssl, hs_type, msg_len ); + ssl->handshake->update_checksum( ssl, msg, msg_len ); +} + void mbedtls_ssl_tls13_add_hs_hdr_to_checksum( mbedtls_ssl_context *ssl, unsigned hs_type, size_t total_hs_len )