mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
openssl: RAND_status always exists in OpenSSL >= 0.9.7
and remove RAND_screen from configure since nothing is using that function
This commit is contained in:
parent
cbec00d914
commit
f9de7c405f
@ -1637,9 +1637,7 @@ if test "$curl_ssl_msg" = "$init_ssl_msg" && test X"$OPT_SSL" != Xno; then
|
||||
dnl SSL_get_shutdown (but this check won't actually detect it there
|
||||
dnl as it's a macro that needs the header files be included)
|
||||
|
||||
AC_CHECK_FUNCS( RAND_status \
|
||||
RAND_screen \
|
||||
RAND_egd \
|
||||
AC_CHECK_FUNCS( RAND_egd \
|
||||
ENGINE_cleanup \
|
||||
SSL_get_shutdown \
|
||||
SSLv2_client_method )
|
||||
|
@ -176,26 +176,12 @@ static int passwd_callback(char *buf, int num, int encrypting,
|
||||
}
|
||||
|
||||
/*
|
||||
* rand_enough() is a function that returns TRUE if we have seeded the random
|
||||
* engine properly. We use some preprocessor magic to provide a seed_enough()
|
||||
* macro to use, just to prevent a compiler warning on this function if we
|
||||
* pass in an argument that is never used.
|
||||
* rand_enough() returns TRUE if we have seeded the random engine properly.
|
||||
*/
|
||||
|
||||
#ifdef HAVE_RAND_STATUS
|
||||
#define seed_enough(x) rand_enough()
|
||||
static bool rand_enough(void)
|
||||
{
|
||||
return (0 != RAND_status()) ? TRUE : FALSE;
|
||||
}
|
||||
#else
|
||||
#define seed_enough(x) rand_enough(x)
|
||||
static bool rand_enough(int nread)
|
||||
{
|
||||
/* this is a very silly decision to make */
|
||||
return (nread > 500) ? TRUE : FALSE;
|
||||
}
|
||||
#endif
|
||||
|
||||
static int ossl_seed(struct Curl_easy *data)
|
||||
{
|
||||
@ -217,7 +203,7 @@ static int ossl_seed(struct Curl_easy *data)
|
||||
data->set.str[STRING_SSL_RANDOM_FILE]:
|
||||
RANDOM_FILE),
|
||||
RAND_LOAD_LENGTH);
|
||||
if(seed_enough(nread))
|
||||
if(rand_enough())
|
||||
return nread;
|
||||
}
|
||||
|
||||
@ -237,7 +223,7 @@ static int ossl_seed(struct Curl_easy *data)
|
||||
data->set.str[STRING_SSL_EGDSOCKET]:EGD_SOCKET);
|
||||
if(-1 != ret) {
|
||||
nread += ret;
|
||||
if(seed_enough(nread))
|
||||
if(rand_enough())
|
||||
return nread;
|
||||
}
|
||||
}
|
||||
@ -258,7 +244,7 @@ static int ossl_seed(struct Curl_easy *data)
|
||||
if(buf[0]) {
|
||||
/* we got a file name to try */
|
||||
nread += RAND_load_file(buf, RAND_LOAD_LENGTH);
|
||||
if(seed_enough(nread))
|
||||
if(rand_enough())
|
||||
return nread;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user