diff --git a/library/ssl_tls.c b/library/ssl_tls.c index 7a75815bb..b8946cda0 100644 --- a/library/ssl_tls.c +++ b/library/ssl_tls.c @@ -2342,6 +2342,7 @@ static int ssl_prepare_handshake_record( ssl_context *ssl ) { SSL_DEBUG_MSG( 1, ( "handshake message too short: %d", ssl->in_msglen ) ); + return( POLARSSL_ERR_SSL_INVALID_RECORD ); } ssl->in_hslen = ssl_hs_hdr_len( ssl ) + ( @@ -2643,6 +2644,9 @@ int ssl_read_record( ssl_context *ssl ) memmove( ssl->in_msg, ssl->in_msg + ssl->in_hslen, ssl->in_msglen ); + SSL_DEBUG_BUF( 4, "remaining content in record", + ssl->in_msg, ssl->in_msglen ); + if( ( ret = ssl_prepare_handshake_record( ssl ) ) != 0 ) return( ret );