Browse Source

socat: fix compile with libressl

Waldemar Brodkorb 8 years ago
parent
commit
ac312feacd

+ 52 - 0
package/socat/patches/patch-sslcls_c

@@ -0,0 +1,52 @@
+--- socat-1.7.3.0.orig/sslcls.c	2015-01-24 11:15:22.000000000 +0100
++++ socat-1.7.3.0/sslcls.c	2015-12-29 20:56:25.000000000 +0100
+@@ -55,6 +55,7 @@ const SSL_METHOD *sycSSLv2_server_method
+ }
+ #endif
+ 
++#ifdef HAVE_SSLv3_client_method
+ const SSL_METHOD *sycSSLv3_client_method(void) {
+    const SSL_METHOD *result;
+    Debug("SSLv3_client_method()");
+@@ -62,7 +63,9 @@ const SSL_METHOD *sycSSLv3_client_method
+    Debug1("SSLv3_client_method() -> %p", result);
+    return result;
+ }
++#endif
+ 
++#ifdef HAVE_SSLv3_server_method
+ const SSL_METHOD *sycSSLv3_server_method(void) {
+    const SSL_METHOD *result;
+    Debug("SSLv3_server_method()");
+@@ -70,6 +73,7 @@ const SSL_METHOD *sycSSLv3_server_method
+    Debug1("SSLv3_server_method() -> %p", result);
+    return result;
+ }
++#endif
+ 
+ const SSL_METHOD *sycSSLv23_client_method(void) {
+    const SSL_METHOD *result;
+@@ -331,14 +335,6 @@ void sycSSL_free(SSL *ssl) {
+    return;
+ }
+ 
+-int sycRAND_egd(const char *path) {
+-   int result;
+-   Debug1("RAND_egd(\"%s\")", path);
+-   result = RAND_egd(path);
+-   Debug1("RAND_egd() -> %d", result);
+-   return result;
+-}
+-
+ DH *sycPEM_read_bio_DHparams(BIO *bp, DH **x, pem_password_cb *cb, void *u) {
+    DH *result;
+    Debug4("PEM_read_bio_DHparams(%p, %p, %p, %p)",
+@@ -375,7 +371,7 @@ int sycFIPS_mode_set(int onoff) {
+ }
+ #endif /* WITH_FIPS */
+ 
+-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
++#if !defined(OPENSSL_NO_COMP)
+ const COMP_METHOD *sycSSL_get_current_compression(SSL *ssl) {
+    const COMP_METHOD *result;
+    Debug1("SSL_get_current_compression(%p)", ssl);

+ 11 - 0
package/socat/patches/patch-sslcls_h

@@ -0,0 +1,11 @@
+--- socat-1.7.3.0.orig/sslcls.h	2015-01-24 11:15:22.000000000 +0100
++++ socat-1.7.3.0/sslcls.h	2015-12-29 23:11:35.000000000 +0100
+@@ -55,7 +55,7 @@ BIO *sycBIO_new_file(const char *filenam
+ 
+ int sycFIPS_mode_set(int onoff);
+ 
+-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
++#if !defined(OPENSSL_NO_COMP)
+ const COMP_METHOD *sycSSL_get_current_compression(SSL *ssl);
+ const COMP_METHOD *sycSSL_get_current_expansion(SSL *ssl);
+ const char *sycSSL_COMP_get_name(const COMP_METHOD *comp);

+ 3 - 3
package/socat/patches/patch-sysincludes_h

@@ -1,6 +1,6 @@
---- socat-1.7.2.2.orig/sysincludes.h	2011-12-06 08:45:03.000000000 +0100
-+++ socat-1.7.2.2/sysincludes.h	2013-12-25 15:43:19.000000000 +0100
-@@ -136,9 +136,11 @@
+--- socat-1.7.3.0.orig/sysincludes.h	2015-01-24 11:15:22.000000000 +0100
++++ socat-1.7.3.0/sysincludes.h	2015-12-29 20:35:27.000000000 +0100
+@@ -141,9 +141,11 @@
  #if HAVE_NETINET_IF_ETHER_H
  #include <netinet/if_ether.h>
  #endif

+ 49 - 0
package/socat/patches/patch-xio-openssl_c

@@ -0,0 +1,49 @@
+--- socat-1.7.3.0.orig/xio-openssl.c	2015-01-24 15:33:42.000000000 +0100
++++ socat-1.7.3.0/xio-openssl.c	2015-12-29 23:38:49.000000000 +0100
+@@ -110,7 +110,7 @@ const struct optdesc opt_openssl_cafile
+ const struct optdesc opt_openssl_capath      = { "openssl-capath",     "capath", OPT_OPENSSL_CAPATH,      GROUP_OPENSSL, PH_SPEC, TYPE_FILENAME, OFUNC_SPEC };
+ const struct optdesc opt_openssl_egd         = { "openssl-egd",        "egd",    OPT_OPENSSL_EGD,         GROUP_OPENSSL, PH_SPEC, TYPE_FILENAME, OFUNC_SPEC };
+ const struct optdesc opt_openssl_pseudo      = { "openssl-pseudo",     "pseudo", OPT_OPENSSL_PSEUDO,      GROUP_OPENSSL, PH_SPEC, TYPE_BOOL,     OFUNC_SPEC };
+-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
++#if !defined(OPENSSL_NO_COMP)
+ const struct optdesc opt_openssl_compress    = { "openssl-compress",   "compress", OPT_OPENSSL_COMPRESS,  GROUP_OPENSSL, PH_SPEC, TYPE_STRING,   OFUNC_SPEC };
+ #endif
+ #if WITH_FIPS
+@@ -147,7 +147,7 @@ int xio_reset_fips_mode(void) {
+ static void openssl_conn_loginfo(SSL *ssl) {
+    Notice1("SSL connection using %s", SSL_get_cipher(ssl));
+ 
+-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
++#if !defined(OPENSSL_NO_COMP)
+    {
+       const COMP_METHOD *comp, *expansion;
+ 
+@@ -651,7 +651,7 @@ int _xioopen_openssl_listen(struct singl
+ #endif /* WITH_LISTEN */
+ 
+ 
+-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
++#if !defined(OPENSSL_NO_COMP)
+ /* In OpenSSL 0.9.7 compression methods could be added using
+  * SSL_COMP_add_compression_method(3), but the implemntation is not compatible
+  * with the standard (RFC3749).
+@@ -743,7 +743,7 @@ int
+    retropt_string(opts, OPT_OPENSSL_DHPARAM, &opt_dhparam);
+    retropt_string(opts, OPT_OPENSSL_EGD, &opt_egd);
+    retropt_bool(opts,OPT_OPENSSL_PSEUDO, &opt_pseudo);
+-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
++#if !defined(OPENSSL_NO_COMP)
+    retropt_string(opts, OPT_OPENSSL_COMPRESS, &opt_compress);
+ #endif
+ #if WITH_FIPS
+@@ -877,10 +877,6 @@ int
+       }
+    }
+ 
+-   if (opt_egd) {
+-      sycRAND_egd(opt_egd);
+-   }
+-
+    if (opt_pseudo) {
+       long int randdata;
+       /* initialize libc random from actual microseconds */

+ 20 - 0
package/socat/patches/patch-xioopts_c

@@ -0,0 +1,20 @@
+--- socat-1.7.3.0.orig/xioopts.c	2015-01-24 11:15:22.000000000 +0100
++++ socat-1.7.3.0/xioopts.c	2015-12-29 23:28:16.000000000 +0100
+@@ -296,7 +296,7 @@ const struct optname optionnames[] = {
+ #if WITH_EXT2 && defined(EXT2_COMPR_FL)
+ 	IF_ANY    ("compr",	&opt_ext2_compr)
+ #endif
+-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
++#if !defined(OPENSSL_NO_COMP)
+ 	IF_OPENSSL("compress",	&opt_openssl_compress)
+ #endif
+ #ifdef TCP_CONN_ABORT_THRESHOLD  /* HP_UX */
+@@ -1098,7 +1098,7 @@ const struct optname optionnames[] = {
+ 	IF_OPENSSL("openssl-certificate",	&opt_openssl_certificate)
+ 	IF_OPENSSL("openssl-cipherlist",	&opt_openssl_cipherlist)
+ 	IF_OPENSSL("openssl-commonname",	&opt_openssl_commonname)
+-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
++#if !defined(OPENSSL_NO_COMP)
+ 	IF_OPENSSL("openssl-compress",	&opt_openssl_compress)
+ #endif
+ 	IF_OPENSSL("openssl-dhparam",	&opt_openssl_dhparam)