logo
Apache Lounge
Webmasters

 

About Forum Index Downloads Search Register Log in  RSS Apache Lounge  


Keep Server Online

If you find the Apache Lounge, the downloads and overall help useful, please express your satisfaction with a donation.

or

Bitcoin

A donation makes a contribution towards the costs, the time and effort that's going in this site and building.

Thank You! Steffen

Your donations will help to keep this site alive and well, and continuing building binaries. Apache Lounge is not sponsored.


Post new topic   Forum Index -> Building & Member Downloads View previous topic :: View next topic
Reply to topic   Topic: Build with OpenSSL 3.0.5
Author
James Blond
Moderator


Joined: 19 Jan 2006
Posts: 7128
Location: Germany, Next to Hamburg

PostPosted: Tue 02 Aug '22 12:31    Post subject: Build with OpenSSL 3.0.5 Reply with quote

Hi,
I tried my first build with OpenSSL 3.0.5

it builds fine, however, when I try to load the new SSL version I get an error. How do I solve this?

Code:

sudo /opt/apache2/bin/httpd -M
httpd: Syntax error on line 85 of /opt/apache2/conf/httpd.conf: Cannot load modules/mod_ssl.so into server: /opt/apache2/modules/mod_ssl.so: undefined symbol: OSSL_PARAM_construct_octet_string


The SSL config was

Code:

./config --prefix=/opt/openssl --openssldir=/opt/openssl no-ssl3 no-ec2m no-rc5 no-idea no-camellia no-weak-ssl-ciphers threads no-psk zlib-dynamic shared enable-ec_nistp_64_gcc_128


used versions

Code:

SSL_VERSION="3.0.5"
HTTPD_VERSION="2.4.54"
APR_VERSION="1.7.0"
APRU_VERSION="1.6.1"
APRI_VERSION="1.2.2"
ZLIB_VERSION="1.2.12"
PCRE_VERSION="8.45"
HTTP2_VERSION="1.42.0"
MOD_SEC_VERSION="2.9.5"
JANSON_VERSION="2.14"

CURL_VERSION="7.80.0"
CURL_PATH="7_80_0"


I also tried PCRE2 10.40

The dev environment is Debian 11 x64
Back to top
tangent



Joined: 16 Aug 2020
Posts: 215
Location: UK

PostPosted: Tue 02 Aug '22 16:56    Post subject: Reply with quote

I think I know your problem, since I've seen something similar when switching the Windows CMake builds between OpenSSL 1.x and 3.x.

Believe the problem is you've got old OpenSSL 1.x headers in the build path taking precedence over 3.x headers, specifically params.h in this case, viz.

Code:
C:\>cd C:\Development\Apache24\src\openssl-3.0.5\include\openssl
C:\Development\Apache24\src\openssl-3.0.5\include\openssl>grep -i OSSL_PARAM_construct_octet_string *.h
params.h:OSSL_PARAM OSSL_PARAM_construct_octet_string(const char *key, void *buf,

C:\>cd C:\Development\Apache24\src\openssl-1.1.1q\include\openssl
C:\Development\Apache24\src\openssl-1.1.1q\include\openssl>grep -i OSSL_PARAM_construct_octet_string *.h

C:\>cd C:\Apache24\bin
C:\Apache24\bin>.\openssl version
OpenSSL 3.0.5 5 Jul 2022 (Library: OpenSSL 3.0.5 5 Jul 2022)

C:\Apache24\bin>.\httpd -M 2>nul | grep ssl
 ssl_module (shared)

Do you have old 1.x headers lurking in /opt/openssl/include, or /opt/apache2/include?
Back to top
James Blond
Moderator


Joined: 19 Jan 2006
Posts: 7128
Location: Germany, Next to Hamburg

PostPosted: Thu 04 Aug '22 10:48    Post subject: Reply with quote

Thanks for the hint. I figured out, that openssl dopes not find the new libssl.so.3

/opt/openssl/bin/openssl version
error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or directory

Even though it is in /opt/openssl/lib64
Back to top
James Blond
Moderator


Joined: 19 Jan 2006
Posts: 7128
Location: Germany, Next to Hamburg

PostPosted: Fri 05 Aug '22 11:12    Post subject: Reply with quote

I got the solution. For apache configure I used

Code:

... --with-ssl=/opt/openssl --with-openssl=/opt/openssl --enable-module=ssl --with-crypto ...


After removing --with-crypto it builds again.
Back to top


Reply to topic   Topic: Build with OpenSSL 3.0.5 View previous topic :: View next topic
Post new topic   Forum Index -> Building & Member Downloads