httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Sperling <s...@apache.org>
Subject Re: check for RAND_egd at configure time
Date Thu, 16 Apr 2015 20:57:48 GMT
On Wed, Apr 15, 2015 at 08:43:04PM +0200, Stefan Sperling wrote:
> LibreSSL does not provide the RAND_egd() function.
> 
> This patch adds a configure check to allow building mod_ssl with LibreSSL.

Updated version following Kaspar Brand's suggestion to move into acinclude.m4.

Index: acinclude.m4
===================================================================
--- acinclude.m4	(revision 1673798)
+++ acinclude.m4	(working copy)
@@ -598,6 +598,11 @@ AC_DEFUN(APACHE_CHECK_OPENSSL,[
       if test "x$liberrors" != "x"; then
         AC_MSG_WARN([OpenSSL libraries are unusable])
       fi
+      have_rand_egd="no"
+      AC_CHECK_LIB(crypto, RAND_egd, [have_rand_egd="yes"])
+      if test "$have_rand_egd" = "yes"; then
+        AC_DEFINE([HAVE_RAND_EGD], [1], [Define if RAND_egd exists.])
+      fi
     else
       AC_MSG_WARN([OpenSSL version is too old])
     fi
Index: modules/ssl/ssl_engine_rand.c
===================================================================
--- modules/ssl/ssl_engine_rand.c	(revision 1673798)
+++ modules/ssl/ssl_engine_rand.c	(working copy)
@@ -86,6 +86,7 @@ int ssl_rand_seed(server_rec *s, apr_pool_t *p, ss
                 nDone += ssl_rand_feedfp(p, fp, pRandSeed->nBytes);
                 ssl_util_ppclose(s, p, fp);
             }
+#ifdef HAVE_RAND_EGD
             else if (pRandSeed->nSrc == SSL_RSSRC_EGD) {
                 /*
                  * seed in contents provided by the external
@@ -95,6 +96,7 @@ int ssl_rand_seed(server_rec *s, apr_pool_t *p, ss
                     continue;
                 nDone += n;
             }
+#endif
             else if (pRandSeed->nSrc == SSL_RSSRC_BUILTIN) {
                 struct {
                     time_t t;

Mime
View raw message