[Pkg-openssl-devel] Bug#1138402: davix: FTBFS with openssl 4.0

Sebastian Andrzej Siewior sebastian at breakpoint.cc
Sat May 30 17:08:10 BST 2026


Package: davix
Version: 0.8.10-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/davix-0.8.10/obj-x86_64-linux-gnu/deps/libneon && /usr/bin/cc  -I/usr/include/libxml2 -I/build/reproducible-path/davix-0.8.10/deps/libneon -I/build/reproducible-path/davix-0.8.10/obj-x86_64-linux-gnu/deps/libneon -I/build/reproducible-path/davix-0.8.10/deps/libneon/.. -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/davix-0.8.10=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=gnu99 -fPIC -DNEON_VERSION=\"0.0.29\" -DNE_VERSION_MAJOR=0 -DNE_VERSION_MINOR=0 -Wno-unused-parameter -fvisibility=hidden -MD -MT deps/libneon/CMakeFiles/LibNeonObjects.dir/src/ne_openssl.c.o -MF CMakeFiles/LibNeonObjects.dir/src/ne_openssl.c.o.d -o CMakeFiles/LibNeonObjects.dir/src/ne_openssl.c.o -c /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c: In function ‘append_dirstring’:
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:72:16: error: invalid use of incomplete typedef ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    72 |     switch (str->type) {
|       |                ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:76:35: error: invalid use of incomplete typedef ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    76 |         ne_buffer_qappend(buf, str->data, str->length);
|       |                                   ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:76:46: error: invalid use of incomplete typedef ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    76 |         ne_buffer_qappend(buf, str->data, str->length);
|       |                                              ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:80:31: error: invalid use of incomplete typedef ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    80 |         if (strlen((char *)str->data) != (size_t)str->length) {
|       |                               ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:80:53: error: invalid use of incomplete typedef ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    80 |         if (strlen((char *)str->data) != (size_t)str->length) {
|       |                                                     ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:83:42: error: invalid use of incomplete typedef ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    83 |         ne_buffer_append(buf, (char *)str->data, str->length);
|       |                                          ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:83:53: error: invalid use of incomplete typedef ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|    83 |         ne_buffer_append(buf, (char *)str->data, str->length);
|       |                                                     ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:107:21: error: invalid use of incomplete typedef ‘ASN1_STRING’ {aka ‘struct asn1_string_st’}
|   107 |                  str->type);
|       |                     ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c: In function ‘dup_ia5string’:
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:117:26: error: invalid use of incomplete typedef ‘ASN1_IA5STRING’ {aka ‘const struct asn1_string_st’}
|   117 |     return ne_strnqdup(as->data, as->length);
|       |                          ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:117:36: error: invalid use of incomplete typedef ‘ASN1_IA5STRING’ {aka ‘const struct asn1_string_st’}
|   117 |     return ne_strnqdup(as->data, as->length);
|       |                                    ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c: In function ‘ne_ssl_readable_dname’:
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:128:32: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
|   128 |         X509_NAME_ENTRY *ent = X509_NAME_get_entry(name->dn, n-1);
|       |                                ^~~~~~~~~~~~~~~~~~~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:137:40: warning: passing argument 2 of ‘append_dirstring’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
|   137 |             if (append_dirstring(dump, X509_NAME_ENTRY_get_data(ent)))
|       |                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:67:58: note: expected ‘ASN1_STRING *’ {aka ‘struct asn1_string_st *’} but argument is of type ‘const ASN1_STRING *’ {aka ‘const struct asn1_string_st *’}
|    67 | static int append_dirstring(ne_buffer *buf, ASN1_STRING *str)
|       |                                             ~~~~~~~~~~~~~^~~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c: In function ‘asn1time_to_timet’:
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:172:16: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   172 |     int i = atm->length;
|       |                ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:177:22: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   177 |     tm.tm_year = (atm->data[0]-'0') * 10 + (atm->data[1]-'0');
|       |                      ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:177:48: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   177 |     tm.tm_year = (atm->data[0]-'0') * 10 + (atm->data[1]-'0');
|       |                                                ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:183:21: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   183 |     tm.tm_mon = (atm->data[2]-'0') * 10 + (atm->data[3]-'0') - 1;
|       |                     ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:183:47: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   183 |     tm.tm_mon = (atm->data[2]-'0') * 10 + (atm->data[3]-'0') - 1;
|       |                                               ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:184:22: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   184 |     tm.tm_mday = (atm->data[4]-'0') * 10 + (atm->data[5]-'0');
|       |                      ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:184:48: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   184 |     tm.tm_mday = (atm->data[4]-'0') * 10 + (atm->data[5]-'0');
|       |                                                ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:185:22: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   185 |     tm.tm_hour = (atm->data[6]-'0') * 10 + (atm->data[7]-'0');
|       |                      ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:185:48: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   185 |     tm.tm_hour = (atm->data[6]-'0') * 10 + (atm->data[7]-'0');
|       |                                                ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:186:21: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   186 |     tm.tm_min = (atm->data[8]-'0') * 10 + (atm->data[9]-'0');
|       |                     ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:186:47: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   186 |     tm.tm_min = (atm->data[8]-'0') * 10 + (atm->data[9]-'0');
|       |                                               ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:187:21: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   187 |     tm.tm_sec = (atm->data[10]-'0') * 10 + (atm->data[11]-'0');
|       |                     ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:187:48: error: invalid use of incomplete typedef ‘ASN1_TIME’ {aka ‘const struct asn1_string_st’}
|   187 |     tm.tm_sec = (atm->data[10]-'0') * 10 + (atm->data[11]-'0');
|       |                                                ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c: In function ‘check_identity’:
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:239:29: error: invalid use of incomplete typedef ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|   239 |                 if (nm->d.ip->length == 4)
|       |                             ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:240:63: error: invalid use of incomplete typedef ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|   240 |                     ia = ne_iaddr_make(ne_iaddr_ipv4, nm->d.ip->data);
|       |                                                               ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:241:34: error: invalid use of incomplete typedef ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|   241 |                 else if (nm->d.ip->length == 16)
|       |                                  ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:242:63: error: invalid use of incomplete typedef ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|   242 |                     ia = ne_iaddr_make(ne_iaddr_ipv6, nm->d.ip->data);
|       |                                                               ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:256:38: error: invalid use of incomplete typedef ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
|   256 |                              nm->d.ip->length);
|       |                                      ^~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:292:27: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
|   292 |         X509_NAME *subj = X509_get_subject_name(cert);
|       |                           ^~~~~~~~~~~~~~~~~~~~~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:310:15: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
|   310 |         entry = X509_NAME_get_entry(subj, lastidx);
|       |               ^
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:311:37: warning: passing argument 2 of ‘append_dirstring’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
|   311 |         if (append_dirstring(cname, X509_NAME_ENTRY_get_data(entry))) {
|       |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:67:58: note: expected ‘ASN1_STRING *’ {aka ‘struct asn1_string_st *’} but argument is of type ‘const ASN1_STRING *’ {aka ‘const struct asn1_string_st *’}
|    67 | static int append_dirstring(ne_buffer *buf, ASN1_STRING *str)
|       |                                             ~~~~~~~~~~~~~^~~
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c: In function ‘populate_cert’:
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:328:22: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
|   328 |     cert->subj_dn.dn = X509_get_subject_name(x5);
|       |                      ^
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:329:24: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
|   329 |     cert->issuer_dn.dn = X509_get_issuer_name(x5);
|       |                        ^
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c: In function ‘ne_ssl_clicert_read’:
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:898:14: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
|   898 |         name = X509_alias_get0(cert, &len);
|       |              ^
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c: In function ‘ne_ssl_clicert_pem_read’:
| /build/reproducible-path/davix-0.8.10/deps/libneon/src/ne_openssl.c:1008:10: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
|  1008 |     name = X509_alias_get0(cert, &len);
|       |          ^
| make[4]: *** [deps/libneon/CMakeFiles/LibNeonObjects.dir/build.make:432: deps/libneon/CMakeFiles/LibNeonObjects.dir/src/ne_openssl.c.o] Error 1

Full buildlog
 	https://breakpoint.cc/openssl-rebuild/logs-4/attempted/davix_0.8.10-2_amd64-2026-04-19T14:11:54Z

Sebastian



More information about the Pkg-openssl-devel mailing list