ssl-Make-RAND_egd-optional.patch 1.13 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
From 4357901b04ed582df55873532c6c22e671512af3 Mon Sep 17 00:00:00 2001
From: Kylie McClain <somasis@exherbo.org>
Date: Tue, 29 Dec 2015 15:11:52 -0500
Subject: [PATCH] ssl: Make RAND_egd optional

Fixes compilation with LibreSSL.
---
 src/network/ssl/ssl.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/network/ssl/ssl.c b/src/network/ssl/ssl.c
index 693ac37..5ed5754 100644
--- a/src/network/ssl/ssl.c
+++ b/src/network/ssl/ssl.c
@@ -84,11 +84,16 @@ init_openssl(struct module *module)
 	 * cannot initialize the PRNG and so every attempt to use SSL fails.
 	 * It's actually an OpenSSL FAQ, and according to them, it's up to the
 	 * application coders to seed the RNG. -- William Yodlowsky */
-	if (RAND_egd(RAND_file_name(f_randfile, sizeof(f_randfile))) < 0) {
+	RAND_file_name(f_randfile, sizeof(f_randfile));
+#ifdef HAVE_RAND_EGD
+	if (RAND_egd(f_randfile) < 0) {
 		/* Not an EGD, so read and write to it */
+#endif
 		if (RAND_load_file(f_randfile, -1))
 			RAND_write_file(f_randfile);
+#ifdef HAVE_RAND_EGD
 	}
+#endif
 
 	SSLeay_add_ssl_algorithms();
 	context = SSL_CTX_new(SSLv23_client_method());
-- 
2.6.4