Prevent arithmetic overflow on bounds check
diff --git a/library/ssl_cli.c b/library/ssl_cli.c
index a126b79..b607fda 100644
--- a/library/ssl_cli.c
+++ b/library/ssl_cli.c
@@ -2246,7 +2246,7 @@
         sig_len = ( p[0] << 8 ) | p[1];
         p += 2;
 
-        if( end != p + sig_len )
+        if( p != end - sig_len )
         {
             MBEDTLS_SSL_DEBUG_MSG( 1, ( "bad server key exchange message" ) );
             return( MBEDTLS_ERR_SSL_BAD_HS_SERVER_KEY_EXCHANGE );