Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 647832

Summary: www-client/lynx with dev-libs/openssl-1.1 - ../../../WWW/Library/Implementation/HTTP.c:172:17: error: too few arguments to function ‘SSL_CTX_new’
Product: Gentoo Linux Reporter: Quentin Minster <quentin>
Component: Current packagesAssignee: Tim Harder <radhermit>
Status: RESOLVED FIXED    
Severity: normal CC: quentin
Priority: Normal Keywords: PATCH
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 592438, 669514    
Attachments: build.log
lynx-2.8.9_pre16-openssl-1.1-compat.patch

Description Quentin Minster 2018-02-16 06:14:30 UTC
Created attachment 519690 [details]
build.log

www-client/lynx fails to build with >=dev-libs/openssl-1.1.0, with the following errors/warnings:

  ../../../WWW/Library/Implementation/HTTP.c: In function ‘HTGetSSLHandle’:
../../../WWW/Library/Implementation/HTTP.c:172:17: error: too few arguments to function ‘SSL_CTX_new’
    if ((ssl_ctx = SSL_CTX_new()) != NULL) {
                   ^~~~~~~~~~~

  ../../../WWW/Library/Implementation/HTTP.c:980:6: warning: implicit declaration of function ‘SSL_load_error_strings’; did you mean ‘ERR_lib_error_string’? [-Wimplicit-function-declaration]
        SSL_load_error_strings();
        ^~~~~~~~~~~~~~~~~~~~~~

  ../../../WWW/Library/Implementation/HTTP.c:1176:25: warning: implicit declaration of function ‘ASN1_STRING_data’; did you mean ‘ASN1_STRING_set0’? [-Wimplicit-function-declaration]
      cert_host = (char *) ASN1_STRING_data(gn->d.ia5);
                           ^~~~~~~~~~~~~~~~

Though they are no errors, the warnings are also severe as they mean Lynx will fail to load at runtime, missing some symbols.

This is due to changes in OpenSSL 1.1.
Comment 1 Quentin Minster 2018-02-16 06:47:57 UTC
Created attachment 519692 [details, diff]
lynx-2.8.9_pre16-openssl-1.1-compat.patch

This patch fixes both the build error (caused by the SSLEAY_VERSION_NUMBER macro no longer being available) and all further issues with functions no longer available in OpenSSL 1.1.0.

I've sent it to upstream's dev mailing list.
Comment 2 Mira Ressel 2018-10-22 10:36:00 UTC
I couldn't reproduce this with www-client/lynx-2.8.9_pre16 and dev-libs/openssl-1.1.1. Perhaps that's because the openssl ebuild doesn't enable the disable-deprecated flag anymore?
Comment 3 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2018-10-24 15:29:27 UTC
Since we decided to no longer build openssl without deprecated features, this
bug can now be considered as fixed (but will eventually reappear once openssl
upstream finally removed deprecated features from their code).