From: Daniel Stenberg Date: Thu, 2 Mar 2000 23:01:35 +0000 (+0000) Subject: Adjusted to run properly with OpenSSL 0.9.5. X-Git-Tag: upstream/7.37.1~17925 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d4e18e4179f091ea0207ff21a6fc1f59e8dfa402;p=platform%2Fupstream%2Fcurl.git Adjusted to run properly with OpenSSL 0.9.5. --- diff --git a/lib/ssluse.c b/lib/ssluse.c index bb78df0..17bec70 100644 --- a/lib/ssluse.c +++ b/lib/ssluse.c @@ -43,6 +43,7 @@ #include "urldata.h" #include "sendf.h" +#include "formdata.h" /* for the boundary function */ #ifdef USE_SSLEAY @@ -162,6 +163,29 @@ UrgSSLConnect (struct UrlData *data) /* Lets get nice error messages */ SSL_load_error_strings(); +#ifdef HAVE_RAND_STATUS + /* RAND_status() was introduced in OpenSSL 0.9.5 */ + if(0 == RAND_status()) +#endif + { + /* We need to seed the PRNG properly! */ +#ifdef WIN32 + /* This one gets a random value by reading the currently shown screen */ + RAND_screen(); +#else + int len; + char *area = MakeFormBoundary(); + if(!area) + return 3; /* out of memory */ + + len = strlen(area); + + RAND_seed(area, len); + + free(area); /* now remove the random junk */ +#endif + } + /* Setup all the global SSL stuff */ SSLeay_add_ssl_algorithms();