[Pkg-openssl-devel] Bug#1138444: fastdds: FTBFS with openssl 4.0
Sebastian Andrzej Siewior
sebastian at breakpoint.cc
Sat May 30 17:15:53 BST 2026
Package: fastdds
Version: 3.3.0+ds-3
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/fastdds-3.3.0+ds/obj-x86_64-linux-gnu/src/cpp && /usr/bin/c++ -DASIO_DISABLE_VISIBILITY -DASIO_STANDALONE -DBOOST_ASIO_STANDALONE -DEPROSIMA_USER_DLL_EXPORT -DFASTCDR_DYN_LINK -DFASTDDS_DYN_LINK -DFASTDDS_SOURCE -DFOONATHAN_MEMORY=1 -DSHM_TRANSPORT_BUILTIN -DSQLITE_WIN32_GETVERSIONEX=0 -DSTDOUTERR_LOG_CONSUMER -DTINYXML2_IMPORT -D_FILE_OFFSET_BITS=64 -Dfastdds_EXPORTS -I/build/reproducible-path/fastdds-3.3.0+ds/thirdparty/filewatch -I/build/reproducible-path/fastdds-3.3.0+ds/include -I/build/reproducible-path/fastdds-3.3.0+ds/obj-x86_64-linux-gnu/include -I/build/reproducible-path/fastdds-3.3.0+ds/obj-x86_64-linux-gnu/include/fastdds -I/build/reproducible-path/fastdds-3.3.0+ds/src/cpp -I/build/reproducible-path/fastdds-3.3.0+ds/thirdparty/boost/include -isystem /usr/include/foonathan_memory -isystem /usr/include/x86_64-linux-gnu/foonathan_memory -g -O2 -ffile-prefix-map=/build/reproducible-path/fastdds-3.3.0+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fvisibility-inlines-hidden -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wpedantic -Wextra -Wno-unknown-pragmas -Wno-error=deprecated-declarations -Wno-switch-bool -Wno-psabi -std=gnu++17 -fPIC -MD -MT src/cpp/CMakeFiles/fastdds.dir/rtps/network/NetworkFactory.cpp.o -MF CMakeFiles/fastdds.dir/rtps/network/NetworkFactory.cpp.o.d -o CMakeFiles/fastdds.dir/rtps/network/NetworkFactory.cpp.o -c /build/reproducible-path/fastdds-3.3.0+ds/src/cpp/rtps/network/NetworkFactory.cpp
| In file included from /usr/include/asio/ssl/rfc2818_verification.hpp:93,
| from /usr/include/asio/ssl.hpp:21,
| from /build/reproducible-path/fastdds-3.3.0+ds/src/cpp/rtps/transport/TCPAcceptorSecure.h:23,
| from /build/reproducible-path/fastdds-3.3.0+ds/src/cpp/rtps/transport/TCPTransportInterface.h:45,
| from /build/reproducible-path/fastdds-3.3.0+ds/src/cpp/rtps/network/NetworkFactory.cpp:29:
| /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;
| | ^~~~~~~~~~~~~~
| make[3]: *** [src/cpp/CMakeFiles/fastdds.dir/build.make:2154: src/cpp/CMakeFiles/fastdds.dir/rtps/network/NetworkFactory.cpp.o] Error 1
Full buildlog
https://breakpoint.cc/openssl-rebuild/logs-4/attempted/fastdds_3.3.0+ds-3_amd64-2026-04-19T09:57:31Z
Sebastian
More information about the Pkg-openssl-devel
mailing list