diff --git a/ChangeLog b/ChangeLog index 18486b3821..0dbf4e5e89 100644 --- a/ChangeLog +++ b/ChangeLog @@ -23,6 +23,8 @@ Bugfix * Fix memory corruption on client with overlong PSK identity, around SSL_MAX_CONTENT_LEN or higher - not triggerrable remotely (found by Aleksandrs Saveljevs) (#238) + * Fix off-by-one error in parsing Supported Point Format extension that + caused some handshakes to fail. Changes * When verifying a certificate chain, if an intermediate certificate is diff --git a/library/ssl_srv.c b/library/ssl_srv.c index fc217549da..379a3abea5 100644 --- a/library/ssl_srv.c +++ b/library/ssl_srv.c @@ -582,7 +582,7 @@ static int ssl_parse_supported_point_formats( ssl_context *ssl, return( POLARSSL_ERR_SSL_BAD_HS_CLIENT_HELLO ); } - p = buf + 2; + p = buf + 1; while( list_size > 0 ) { if( p[0] == POLARSSL_ECP_PF_UNCOMPRESSED ||