summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2016-11-11 13:37:01 +0100
committerDaniel Stenberg <daniel@haxx.se>2016-11-11 13:44:09 +0100
commitf9de7c405f2fcaca620155cb72f197ce2aba8462 (patch)
tree0dd58c7b392a838d9c58ff2eae4888ed4775eade
parentcbec00d914cd3e3ee4c7e139f470431db4ea0081 (diff)
downloadcurl-f9de7c405f2fcaca620155cb72f197ce2aba8462.tar.gz
openssl: RAND_status always exists in OpenSSL >= 0.9.7
and remove RAND_screen from configure since nothing is using that function
-rw-r--r--configure.ac4
-rw-r--r--lib/vtls/openssl.c22
2 files changed, 5 insertions, 21 deletions
diff --git a/configure.ac b/configure.ac
index 74f231608..5a8057f61 100644
--- a/configure.ac
+++ b/configure.ac
@@ -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 )
diff --git a/lib/vtls/openssl.c b/lib/vtls/openssl.c
index 74e5915c3..9cf36b358 100644
--- a/lib/vtls/openssl.c
+++ b/lib/vtls/openssl.c
@@ -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;
}