Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 459238 Details for
Bug 605026
www-client/elinks-0.12_pre6-r2 with dev-libs/openssl-1.1.0c - configure: error: OpenSSL not found - conftest.c:151: undefined reference to `SSLeay_add_ssl_algorithms'
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
0001-Support-openssl-1.1.0-without-compat-modes.patch
0001-Support-openssl-1.1.0-without-compat-modes.patch (text/plain), 3.76 KB, created by
eroen
on 2017-01-08 22:42:45 UTC
(
hide
)
Description:
0001-Support-openssl-1.1.0-without-compat-modes.patch
Filename:
MIME Type:
Creator:
eroen
Created:
2017-01-08 22:42:45 UTC
Size:
3.76 KB
patch
obsolete
>From 4ced5e73b23462ef818556263b9320d76079aa6e Mon Sep 17 00:00:00 2001 >From: eroen <elinks@occam.eroen.eu> >Date: Sun, 8 Jan 2017 21:13:33 +0100 >Subject: [PATCH] Support openssl-1.1.0 without compat modes > >These changes fix build failures when openssl 1.1.0 was built with `--api=1.1 >disable-deprecated`. > >- Various initialization functions, also used to check for openssl in > configure, are deprecated. Added OpenSSL_version_num as fallback in > configure. >- Use get and set functions for opaque structures >- RAND_pseudo_bytes is deprecated > >X-Gentoo-Bug: 605026 >X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=605026 >--- > configure.in | 5 +++++ > src/network/ssl/socket.c | 12 ++++++++++++ > src/network/ssl/ssl.c | 7 +++++++ > 3 files changed, 24 insertions(+) > >diff --git a/configure.in b/configure.in >index 5dac8840..0a53caab 100644 >--- a/configure.in >+++ b/configure.in >@@ -1122,6 +1122,9 @@ else > if test "$cf_result" != yes; then > AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <openssl/ssl.h>]], [[SSLeay_add_ssl_algorithms()]])],[cf_result=yes],[cf_result=no]) > fi >+ if test "$cf_result" != yes; then >+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <openssl/crypto.h>]], [[OpenSSL_version_num()]])],[cf_result=yes],[cf_result=no]) >+ fi > fi > done > >@@ -1136,6 +1139,8 @@ else > > CFLAGS="$CFLAGS_X" > AC_SUBST(OPENSSL_CFLAGS) >+ >+ AC_CHECK_FUNCS([SSL_set_options] [ASN1_STRING_get0_data] [SSL_get_SSL_CTX]) > fi > fi > >diff --git a/src/network/ssl/socket.c b/src/network/ssl/socket.c >index 886eaf25..67694e58 100644 >--- a/src/network/ssl/socket.c >+++ b/src/network/ssl/socket.c >@@ -81,7 +81,11 @@ static void > ssl_set_no_tls(struct socket *socket) > { > #ifdef CONFIG_OPENSSL >+#ifdef HAVE_SSL_SET_OPTIONS >+ SSL_set_options((ssl_t *) socket->ssl, SSL_OP_NO_TLSv1); >+#else > ((ssl_t *) socket->ssl)->options |= SSL_OP_NO_TLSv1; >+#endif /* HAVE_SSL_SET_OPTIONS */ > #elif defined(CONFIG_GNUTLS) > /* There is another gnutls_priority_set_direct call elsewhere > * in ELinks. If you change the priorities here, please check >@@ -246,7 +250,11 @@ static int > match_uri_host_ip(const unsigned char *uri_host, > ASN1_OCTET_STRING *cert_host_asn1) > { >+#ifdef HAVE_ASN1_STRING_GET0_DATA >+ const unsigned char *cert_host_addr = ASN1_STRING_get0_data(cert_host_asn1); >+#else > const unsigned char *cert_host_addr = ASN1_STRING_data(cert_host_asn1); >+#endif /* HAVE_ASN1_STRING_GET0_DATA */ > struct in_addr uri_host_in; > #ifdef CONFIG_IPV6 > struct in6_addr uri_host_in6; >@@ -453,7 +461,11 @@ ssl_connect(struct socket *socket) > (SSL *) socket->ssl, > client_cert); > #else >+#ifdef HAVE_SSL_GET_SSL_CTX >+ SSL_CTX *ctx = SSL_get_SSL_CTX(socket->ssl); >+#else > SSL_CTX *ctx = ((SSL *) socket->ssl)->ctx; >+#endif /* HAVE_SSL_GET_SSL_CTX */ > > SSL_CTX_use_certificate_chain_file(ctx, client_cert); > SSL_CTX_use_PrivateKey_file(ctx, client_cert, >diff --git a/src/network/ssl/ssl.c b/src/network/ssl/ssl.c >index 5ed57543..b878c6be 100644 >--- a/src/network/ssl/ssl.c >+++ b/src/network/ssl/ssl.c >@@ -7,6 +7,7 @@ > #ifdef CONFIG_OPENSSL > #include <openssl/ssl.h> > #include <openssl/rand.h> >+#include <openssl/opensslv.h> > #define USE_OPENSSL > #elif defined(CONFIG_NSS_COMPAT_OSSL) > #include <nss_compat_ossl/nss_compat_ossl.h> >@@ -95,7 +96,9 @@ init_openssl(struct module *module) > } > #endif > >+#if OPENSSL_VERSION_NUMBER < 0x10100000L > SSLeay_add_ssl_algorithms(); >+#endif > context = SSL_CTX_new(SSLv23_client_method()); > SSL_CTX_set_options(context, SSL_OP_ALL); > SSL_CTX_set_default_verify_paths(context); >@@ -432,7 +435,11 @@ void > random_nonce(unsigned char buf[], size_t size) > { > #ifdef USE_OPENSSL >+#if OPENSSL_VERSION_NUMBER < 0x10100000L > RAND_pseudo_bytes(buf, size); >+#else >+ RAND_bytes(buf, size); >+#endif > #elif defined(CONFIG_GNUTLS) > gcry_create_nonce(buf, size); > #else >-- >2.11.0 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 605026
:
459136
|
459138
| 459238 |
459240
|
459242
|
500770
|
502474
|
522472