[pkg-opensc-maint] Bug#1075390: pkcs11-helper: ftbfs with GCC-14

Matthias Klose doko at debian.org
Wed Jul 3 13:40:16 BST 2024


Package: src:pkcs11-helper
Version: 1.29.0-2.1
Severity: important
Tags: sid trixie
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-14

[This bug is targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-14/g++-14, but succeeds to build with gcc-13/g++-13. The
severity of this report will be raised before the trixie release.

The full build log can be found at:
http://qa-logs.debian.net/2024/07/01/pkcs11-helper_1.29.0-2.1_unstable_gccexp.log
The last lines of the build log are at the end of this report.

To build with GCC 14, either set CC=gcc-14 CXX=g++-14 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

Common build failures are new warnings resulting in build failures with
-Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-14/porting_to.html

[...]
 1299 | OSSL_DEPRECATEDIN_3_0 const EC_KEY_METHOD *EC_KEY_get_default_method(void);
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~
pkcs11h-openssl.c:1144:17: warning: ‘EC_KEY_METHOD_get_sign’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
 1144 |                 EC_KEY_METHOD_get_sign(__openssl_methods.eckey, &sig, NULL, NULL);
      |                 ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/openssl/ec.h:1543:28: note: declared here
 1543 | OSSL_DEPRECATEDIN_3_0 void EC_KEY_METHOD_get_sign
      |                            ^~~~~~~~~~~~~~~~~~~~~~
pkcs11h-openssl.c:1145:17: warning: ‘EC_KEY_METHOD_set_sign’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
 1145 |                 EC_KEY_METHOD_set_sign(__openssl_methods.eckey, sig, NULL, __pkcs11h_openssl_eckey_do_sign);
      |                 ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/openssl/ec.h:1499:28: note: declared here
 1499 | OSSL_DEPRECATEDIN_3_0 void EC_KEY_METHOD_set_sign
      |                            ^~~~~~~~~~~~~~~~~~~~~~
pkcs11h-openssl.c:1151:17: error: passing argument 5 of ‘CRYPTO_get_ex_new_index’ from incompatible pointer type [-Wincompatible-pointer-types]
 1151 |                 __pkcs11h_openssl_ex_data_dup,
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                 |
      |                 int (*)(CRYPTO_EX_DATA *, const CRYPTO_EX_DATA *, void *, int,  long int,  void *) {aka int (*)(struct crypto_ex_data_st *, const struct crypto_ex_data_st *, void *, int,  long int,  void *)}
/usr/include/openssl/crypto.h:247:51: note: expected ‘int (*)(CRYPTO_EX_DATA *, const CRYPTO_EX_DATA *, void **, int,  long int,  void *)’ {aka ‘int (*)(struct crypto_ex_data_st *, const struct crypto_ex_data_st *, void **, int,  long int,  void *)’} but argument is of type ‘int (*)(CRYPTO_EX_DATA *, const CRYPTO_EX_DATA *, void *, int,  long int,  void *)’ {aka ‘int (*)(struct crypto_ex_data_st *, const struct crypto_ex_data_st *, void *, int,  long int,  void *)’}
  247 |                                    CRYPTO_EX_dup *dup_func,
      |                                    ~~~~~~~~~~~~~~~^~~~~~~~
pkcs11h-openssl.c: In function ‘_pkcs11h_openssl_terminate’:
pkcs11h-openssl.c:1174:17: warning: ‘RSA_meth_free’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
 1174 |                 RSA_meth_free (__openssl_methods.rsa);
      |                 ^~~~~~~~~~~~~
/usr/include/openssl/rsa.h:485:28: note: declared here
  485 | OSSL_DEPRECATEDIN_3_0 void RSA_meth_free(RSA_METHOD *meth);
      |                            ^~~~~~~~~~~~~
pkcs11h-openssl.c:1180:17: warning: ‘DSA_meth_free’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
 1180 |                 DSA_meth_free (__openssl_methods.dsa);
      |                 ^~~~~~~~~~~~~
/usr/include/openssl/dsa.h:224:28: note: declared here
  224 | OSSL_DEPRECATEDIN_3_0 void DSA_meth_free(DSA_METHOD *dsam);
      |                            ^~~~~~~~~~~~~
pkcs11h-openssl.c:1186:17: warning: ‘EC_KEY_METHOD_free’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
 1186 |                 EC_KEY_METHOD_free(__openssl_methods.eckey);
      |                 ^~~~~~~~~~~~~~~~~~
/usr/include/openssl/ec.h:1481:28: note: declared here
 1481 | OSSL_DEPRECATEDIN_3_0 void EC_KEY_METHOD_free(EC_KEY_METHOD *meth);
      |                            ^~~~~~~~~~~~~~~~~~
pkcs11h-openssl.c: In function ‘pkcs11h_openssl_session_getRSA’:
pkcs11h-openssl.c:1428:17: warning: ‘EVP_PKEY_get1_RSA’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
 1428 |                 (rsa = EVP_PKEY_get1_RSA (evp)) == NULL
      |                 ^
/usr/include/openssl/evp.h:1356:16: note: declared here
 1356 | struct rsa_st *EVP_PKEY_get1_RSA(EVP_PKEY *pkey);
      |                ^~~~~~~~~~~~~~~~~
pkcs11h-openssl.c:1444:17: warning: ‘RSA_free’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
 1444 |                 RSA_free (rsa);
      |                 ^~~~~~~~
/usr/include/openssl/rsa.h:304:28: note: declared here
  304 | OSSL_DEPRECATEDIN_3_0 void RSA_free(RSA *r);
      |                            ^~~~~~~~
make[4]: *** [Makefile:619: pkcs11h-openssl.lo] Error 1
make[4]: *** Waiting for unfinished jobs....
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c pkcs11h-data.c -o pkcs11h-data.o >/dev/null 2>&1
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c pkcs11h-serialization.c -o pkcs11h-serialization.o >/dev/null 2>&1
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c pkcs11h-core.c -o pkcs11h-core.o >/dev/null 2>&1
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c pkcs11h-certificate.c -o pkcs11h-certificate.o >/dev/null 2>&1
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[3]: *** [Makefile:493: all] Error 2
make[3]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[2]: *** [Makefile:549: all-recursive] Error 1
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: *** [Makefile:458: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build: error: make -j8 returned exit code 2
make: *** [debian/rules:4: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the pkg-opensc-maint mailing list