Moving the ecdhe_computed variable into the handshake structure
diff --git a/library/ssl_cli.c b/library/ssl_cli.c
index 07d5825..5ed06d3 100644
--- a/library/ssl_cli.c
+++ b/library/ssl_cli.c
@@ -4259,9 +4259,6 @@
{
case MBEDTLS_SSL_HELLO_REQUEST:
ssl->state = MBEDTLS_SSL_CLIENT_HELLO;
-#if defined(MBEDTLS_EARLY_KEY_COMPUTATION)
- int ecdhe_computed = 0;
-#endif /* MBEDTLS_EARLY_KEY_COMPUTATION */
break;
/*
@@ -4281,14 +4278,14 @@
case MBEDTLS_SSL_SERVER_HELLO:
#if defined(MBEDTLS_EARLY_KEY_COMPUTATION) && defined(MBEDTLS_USE_TINYCRYPT)
/* Make sure that the ECDHE pre-computation is only done once */
- if( ecdhe_computed == 0 )
+ if( ssl->handshake->ecdhe_computed == 0 )
{
ret = uECC_make_key( ssl->handshake->ecdh_publickey, ssl->handshake->ecdh_privkey );
if( ret == UECC_FAULT_DETECTED )
return( MBEDTLS_ERR_PLATFORM_FAULT_DETECTED );
if( ret != UECC_SUCCESS )
return( MBEDTLS_ERR_SSL_HW_ACCEL_FAILED );
- ecdhe_computed = 1;
+ ssl->handshake->ecdhe_computed = 1;
}
#endif /* MBEDTLS_EARLY_KEY_COMPUTATION && MBEDTLS_USE_TINYCRYPT */