migrating from OpsenSSL 1.1.1t to 3.0.10

Tomas Mraz tomas at openssl.org
Mon Sep 11 09:53:44 UTC 2023


Yes, everything that uses OpenSSL needs to be recompiled when migrating
from 1.1.1 to 3.x versions. There is no way around that.

Tomas Mraz, OpenSSL

On Mon, 2023-09-11 at 11:43 +0200, Matthias Apitz wrote:
> 
> Hello,
> 
> We have a lot of own C/C++ written servers, compiled and linked
> against
> libcrypto.1.1 and libssl.1.1:
> 
> # ls -l /usr/local/sisis-pap/lib/libssl* /usr/local/sisis-
> pap/lib/libcry*
> -rw-r--r-- 1 bin  bin  5072394 Jun 16 09:02 /usr/local/sisis-
> pap/lib/libcrypto.a
> lrwxrwxrwx 1 root root      16 Jun 16 09:08 /usr/local/sisis-
> pap/lib/libcrypto.so -> libcrypto.so.1.1
> -rwxr-xr-x 1 bin  bin  3002744 Jun 16 09:08 /usr/local/sisis-
> pap/lib/libcrypto.so.1.1
> -rw-r--r-- 1 bin  bin  1029426 Jun 16 09:02 /usr/local/sisis-
> pap/lib/libssl.a
> lrwxrwxrwx 1 root root      13 Jun 16 09:08 /usr/local/sisis-
> pap/lib/libssl.so -> libssl.so.1.1
> -rwxr-xr-x 1 bin  bin   697248 Jun 16 09:08 /usr/local/sisis-
> pap/lib/libssl.so.1.1
> 
> These servers are our own application servers, but also for example
> the
> PostgreSQL server (also compiled from source).
> 
> So far so good.
> 
> Now with the announced EOL of 1.1.1 I compiled OpenSSL 3.0.10 which
> gave
> in a new target directoy the following libs:
> 
> # ls -l /usr/local/sisis-pap-ssl30/lib/libssl* /usr/local/sisis-pap-
> ssl30/lib/libcry*
> -rw-r--r-- 1 root root 8975888 Sep 11 08:38 /usr/local/sisis-pap-
> ssl30/lib/libcrypto.a
> lrwxrwxrwx 1 root root      14 Sep 11 08:38 /usr/local/sisis-pap-
> ssl30/lib/libcrypto.so -> libcrypto.so.3
> -rwxr-xr-x 1 root root 4962368 Sep 11 08:38 /usr/local/sisis-pap-
> ssl30/lib/libcrypto.so.3
> -rw-r--r-- 1 root root 1253636 Sep 11 08:38 /usr/local/sisis-pap-
> ssl30/lib/libssl.a
> lrwxrwxrwx 1 root root      11 Sep 11 08:38 /usr/local/sisis-pap-
> ssl30/lib/libssl.so -> libssl.so.3
> -rwxr-xr-x 1 root root  803008 Sep 11 08:38 /usr/local/sisis-pap-
> ssl30/lib/libssl.so.3
> 
> To make the existing servers happy, it does not help to change the
> LD_LIBRARY_PATH to get the 3.0.10 libs in front of the old 1.1.1t
> libs
> and also making sym links like:
> 
> lrwxrwxrwx 1 root root      45 Sep 11 11:11 /usr/local/sisis-pap-
> ssl30/lib/libcrypto.so.1.1 -> /usr/local/sisis-pap-
> ssl30/lib/libcrypto.so.3
> lrwxrwxrwx 1 root root      42 Sep 11 11:12 /usr/local/sisis-pap-
> ssl30/lib/libssl.so.1.1 -> /usr/local/sisis-pap-ssl30/lib/libssl.so.3
> 
> will not help, because the server (here the PostgreSQL server) is
> missing old symbols in the new 3.0.10 shared libs:
> 
> # /etc/init.d/postgres.ssl30 start
> /usr/local/sisis-pap/pgsql-15.1/bin/postmaster: /usr/local/sisis-pap-
> ssl30/lib/libssl.so.1.1: version `OPENSSL_1_1_0' not found (required
> by /usr/local/sisis-pap/pgsql-15.1/bin/postmaster)
> /usr/local/sisis-pap/pgsql-15.1/bin/postmaster: /usr/local/sisis-pap-
> ssl30/lib/libcrypto.so.1.1: version `OPENSSL_1_1_0' not found
> (required by /usr/local/sisis-pap/pgsql-15.1/bin/postmaster)
>         libssl.so.1.1 => /usr/local/sisis-pap-ssl30/lib/libssl.so.1.1
> (0x00007fb9b5046000)
>         libcrypto.so.1.1 => /usr/local/sisis-pap-
> ssl30/lib/libcrypto.so.1.1 (0x00007fb9b4c2f000)
> Starting PostgreSQL: su: cannot open session: Module is unknown
> 
> This matches what is expressed in the migration guide:
> https://www.openssl.org/docs/man3.1/man7/migration_guide.html
> ...
> OpenSSL 3.0 is a major release and consequently any application that
> currently uses an older version of OpenSSL will at the very least
> need
> to be recompiled in order to work with the new version.
> ...
> 
> Thanks
> 
>         matthias
> 
> 

-- 
Tomáš Mráz, OpenSSL



More information about the openssl-users mailing list