[Pkg-openssl-devel] Bug#1138418: galera-4: FTBFS with openssl 4.0

Sebastian Andrzej Siewior sebastian at breakpoint.cc
Sat May 30 17:11:06 BST 2026


Package: galera-4
Version: 26.4.25-2
Severity: normal
Tags: sid
control: affects -1 src:openssl
User: pkg-openssl-devel at lists.alioth.debian.org
Usertags: openssl-4.0

OpenSSL 4.0 is in experimental. This package fails to build against it:

| cd /build/reproducible-path/galera-4-26.4.25/obj-x86_64-linux-gnu/galerautils/src && /usr/bin/c++ -DBOOST_BIND_GLOBAL_PLACEHOLDERS=1 -DBOOST_DATE_TIME_POSIX_TIME_STD_CONFIG=1 -DGALERA_HAVE_SSL -DGALERA_LOG_H_ENABLE_CXX -DHAVE_ASIO_HPP -DHAVE_BOOST_SHARED_PTR_HPP -DHAVE_BYTESWAP_H -DHAVE_COMMON_H -DHAVE_ENDIAN_H -DHAVE_STD_ARRAY -DHAVE_STD_UNORDERED_MAP -DNDEBUG -DOPENSSL_HAS_SET_ECDH_AUTO -D_XOPEN_SOURCE=600 -I/build/reproducible-path/galera-4-26.4.25 -I/build/reproducible-path/galera-4-26.4.25/common -I/build/reproducible-path/galera-4-26.4.25/galera/src -I/build/reproducible-path/galera-4-26.4.25/galerautils/src -I/build/reproducible-path/galera-4-26.4.25/gcache/src -I/build/reproducible-path/galera-4-26.4.25/gcomm/src -I/build/reproducible-path/galera-4-26.4.25/gcs/src -I/build/reproducible-path/galera-4-26.4.25/wsrep/src -Wall -Wextra -g -O2 -Woverloaded-virtual -g -O2 -ffile-prefix-map=/build/reproducible-path/galera-4-26.4.25=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=gnu++11 -fPIC -Wno-conversion -Wno-unused-parameter -MD -MT galerautils/src/CMakeFiles/galerautilsxx.dir/gu_asio.cpp.o -MF CMakeFiles/galerautilsxx.dir/gu_asio.cpp.o.d -o CMakeFiles/galerautilsxx.dir/gu_asio.cpp.o -c /build/reproducible-path/galera-4-26.4.25/galerautils/src/gu_asio.cpp
| In file included from /usr/include/asio/ssl/rfc2818_verification.hpp:93,
|                  from /usr/include/asio/ssl.hpp:21,
|                  from /build/reproducible-path/galera-4-26.4.25/galerautils/src/gu_asio_io_service_impl.hpp:21,
|                  from /build/reproducible-path/galera-4-26.4.25/galerautils/src/gu_asio.cpp:26:
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp: In member function ‘bool asio::ssl::rfc2818_verification::operator()(bool, asio::ssl::verify_context&) const’:
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:65:17: error: invalid use of incomplete type ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’}
|    65 |       if (domain->type == V_ASN1_IA5STRING && domain->data && domain->length)
|       |                 ^~
| In file included from /usr/include/openssl/crypto.h:38,
|                  from /usr/include/openssl/bio.h:32,
|                  from /usr/include/openssl/conf.h:26,
|                  from /usr/include/asio/ssl/detail/openssl_types.hpp:23,
|                  from /usr/include/asio/ssl/context_base.hpp:19,
|                  from /usr/include/asio/ssl/context.hpp:23,
|                  from /usr/include/asio/ssl.hpp:18:
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:65:53: error: invalid use of incomplete type ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’}
|    65 |       if (domain->type == V_ASN1_IA5STRING && domain->data && domain->length)
|       |                                                     ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:65:69: error: invalid use of incomplete type ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’}
|    65 |       if (domain->type == V_ASN1_IA5STRING && domain->data && domain->length)
|       |                                                                     ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:67:67: error: invalid use of incomplete type ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’}
|    67 |         const char* pattern = reinterpret_cast<const char*>(domain->data);
|       |                                                                   ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:68:44: error: invalid use of incomplete type ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’}
|    68 |         std::size_t pattern_length = domain->length;
|       |                                            ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:79:21: error: invalid use of incomplete type ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    79 |       if (ip_address->type == V_ASN1_OCTET_STRING && ip_address->data)
|       |                     ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:79:64: error: invalid use of incomplete type ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    79 |       if (ip_address->type == V_ASN1_OCTET_STRING && ip_address->data)
|       |                                                                ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:81:42: error: invalid use of incomplete type ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    81 |         if (address.is_v4() && ip_address->length == 4)
|       |                                          ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:84:46: error: invalid use of incomplete type ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    84 |           if (memcmp(bytes.data(), ip_address->data, 4) == 0)
|       |                                              ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:90:47: error: invalid use of incomplete type ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    90 |         else if (address.is_v6() && ip_address->length == 16)
|       |                                               ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:93:46: error: invalid use of incomplete type ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    93 |           if (memcmp(bytes.data(), ip_address->data, 16) == 0)
|       |                                              ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:106:42: error: invalid conversion from ‘const X509_NAME*’ {aka ‘const X509_name_st*’} to ‘X509_NAME*’ {aka ‘X509_name_st*’} [-fpermissive]
|   106 |   X509_NAME* name = X509_get_subject_name(cert);
|       |                     ~~~~~~~~~~~~~~~~~~~~~^~~~~~
|       |                                          |
|       |                                          const X509_NAME* {aka const X509_name_st*}
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:111:54: error: invalid conversion from ‘const X509_NAME_ENTRY*’ {aka ‘const X509_name_entry_st*’} to ‘X509_NAME_ENTRY*’ {aka ‘X509_name_entry_st*’} [-fpermissive]
|   111 |     X509_NAME_ENTRY* name_entry = X509_NAME_get_entry(name, i);
|       |                                   ~~~~~~~~~~~~~~~~~~~^~~~~~~~~
|       |                                                      |
|       |                                                      const X509_NAME_ENTRY* {aka const X509_name_entry_st*}
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:112:43: error: invalid conversion from ‘const ASN1_STRING*’ {aka ‘const asn1_string_st*’} to ‘ASN1_STRING*’ {aka ‘asn1_string_st*’} [-fpermissive]
|   112 |     common_name = X509_NAME_ENTRY_get_data(name_entry);
|       |                   ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
|       |                                           |
|       |                                           const ASN1_STRING* {aka const asn1_string_st*}
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:114:33: error: invalid use of incomplete type ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|   114 |   if (common_name && common_name->data && common_name->length)
|       |                                 ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:114:54: error: invalid use of incomplete type ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|   114 |   if (common_name && common_name->data && common_name->length)
|       |                                                      ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:116:68: error: invalid use of incomplete type ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|   116 |     const char* pattern = reinterpret_cast<const char*>(common_name->data);
|       |                                                                    ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /usr/include/asio/ssl/impl/rfc2818_verification.ipp:117:45: error: invalid use of incomplete type ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|   117 |     std::size_t pattern_length = common_name->length;
|       |                                             ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    57 | typedef struct asn1_string_st ASN1_INTEGER;
|       |                ^~~~~~~~~~~~~~
| /build/reproducible-path/galera-4-26.4.25/galerautils/src/gu_asio.cpp: In function ‘bool gu::allowlist_value_check(wsrep_allowlist_key_t, const std::string&)’:
| /build/reproducible-path/galera-4-26.4.25/galerautils/src/gu_asio.cpp:888:1: warning: control reaches end of non-void function [-Wreturn-type]
|   888 | }
|       | ^
| make[3]: *** [galerautils/src/CMakeFiles/galerautilsxx.dir/build.make:390: galerautils/src/CMakeFiles/galerautilsxx.dir/gu_asio.cpp.o] Error 1
| make[3]: Leaving directory '/build/reproducible-path/galera-4-26.4.25/obj-x86_64-linux-gnu'

Full buildlog
 	https://breakpoint.cc/openssl-rebuild/logs-4/attempted/galera-4_26.4.25-2_amd64-2026-04-19T13:20:19Z

Sebastian



More information about the Pkg-openssl-devel mailing list