Adding usage and removing dummy random
diff --git a/programs/ssl/ssl_client2.c b/programs/ssl/ssl_client2.c
index a291013..67d23e2 100644
--- a/programs/ssl/ssl_client2.c
+++ b/programs/ssl/ssl_client2.c
@@ -312,6 +312,9 @@
#define USAGE_ETM ""
#endif
+#define USAGE_REPRODUCIBLE \
+ " reproducible=0/1 default: 0 (disabled)\n"
+
#if defined(MBEDTLS_SSL_RENEGOTIATION)
#define USAGE_RENEGO \
" renegotiation=%%d default: 0 (disabled)\n" \
@@ -383,6 +386,7 @@
USAGE_FALLBACK \
USAGE_EMS \
USAGE_ETM \
+ USAGE_REPRODUCIBLE \
USAGE_CURVES \
USAGE_RECSPLIT \
USAGE_DHMLEN \
@@ -547,21 +551,6 @@
return 0x5af2a056;
}
-int dummy_random( void *p_rng, unsigned char *output, size_t output_len )
-{
- int ret;
- size_t i;
-
- //use mbedtls_ctr_drbg_random to find bugs in it
- ret = mbedtls_ctr_drbg_random( p_rng, output, output_len );
- for ( i = 0; i < output_len; i++ )
- {
- //replace result with pseudo random
- output[i] = (unsigned char) rand();
- }
- return( ret );
-}
-
int dummy_entropy( void *data, unsigned char *output, size_t len )
{
size_t i;
@@ -1709,6 +1698,7 @@
mbedtls_entropy_init( &entropy );
if (opt.reproducible)
{
+ srand( 1 );
if( ( ret = mbedtls_ctr_drbg_seed( &ctr_drbg, dummy_entropy,
&entropy, (const unsigned char *) pers,
strlen( pers ) ) ) != 0 )
@@ -2009,8 +1999,6 @@
if (opt.reproducible)
{
- srand( 1 );
- mbedtls_ssl_conf_rng( &conf, dummy_random, &ctr_drbg );
#if defined(MBEDTLS_HAVE_TIME)
#if defined(MBEDTLS_PLATFORM_TIME_ALT)
mbedtls_platform_set_time( dummy_constant_time );