Bug#1006574: sendmail: FTBFS with OpenSSL 3.0
Source: sendmail
Version: 8.16.1-2
Severity: important
Tags: bookworm sid
User: pkg-openssl-devel@lists.alioth.debian.org
Usertags: ftbfs-3.0
Your package is failing to build using OpenSSL 3.0 with the
following error:
| gcc -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I. -I../../include -I/usr/include/tirpc -DSOCKETMAP -DMAP_REGEX -DNEWDB -DNIS -DNISPLUS -DLDAPMAP -DHASFCHMOD=1 -DHASSETRLIMIT=1 -DHASFLOCK=0 -DUSESETEUID=1 -DHASGETUSERSHELL=1 -DHAS_GETHOSTBYNAME2=1 -DNETINET6 -D_PATH_SENDMAILPID=\"/var/run/sendmail/mta/sendmail.pid\" -DIP_SRCROUTE=1 -DMILTER -DLDAP_REFERRALS -DLDAP_DEPRECATED -DTCPWRAPPERS -DSASL -I/usr/include/sasl -DSTARTTLS -D_FFR_QUEUE_SCHED_DBG -D_FFR_SKIP_DOMAINS -D_FFR_NO_PIPE -D_FFR_SHM_STATUS -D_FFR_RHS -D_FFR_MAIL_MACRO -D_FFR_QUEUEDELAY=1 -D_FFR_BADRCPT_SHUTDOWN -D_FFR_RESET_MACRO_GLOBALS -D_FFR_TLS_EC -Wdate-time -D_FORTIFY_SOURCE=2 -c -o tls.o tls.c
| tls.c: In function ‘get_dh512’:
| tls.c:87:9: warning: ‘DH_new’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
| 87 | if ((dh = DH_new()) == NULL)
| | ^~
| In file included from /usr/include/openssl/dsa.h:51,
| from /usr/include/openssl/x509.h:37,
| from /usr/include/openssl/ssl.h:31,
| from ./sendmail.h:46,
| from tls.c:11:
| /usr/include/openssl/dh.h:199:27: note: declared here
| 199 | OSSL_DEPRECATEDIN_3_0 DH *DH_new(void);
| | ^~~~~~
| tls.c:99:11: error: invalid use of incomplete typedef ‘DH’ {aka ‘struct dh_st’}
| 99 | dh->p = BN_bin2bn(dh512_p, sizeof(dh512_p), NULL);
| | ^~
| tls.c:100:11: error: invalid use of incomplete typedef ‘DH’ {aka ‘struct dh_st’}
| 100 | dh->g = BN_bin2bn(dh512_g, sizeof(dh512_g), NULL);
| | ^~
| tls.c:101:16: error: invalid use of incomplete typedef ‘DH’ {aka ‘struct dh_st’}
| 101 | if ((dh->p == NULL) || (dh->g == NULL))
| | ^~
| tls.c:101:35: error: invalid use of incomplete typedef ‘DH’ {aka ‘struct dh_st’}
| 101 | if ((dh->p == NULL) || (dh->g == NULL))
| | ^~
| tls.c:103:17: warning: ‘DH_free’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
| 103 | DH_free(dh);
| | ^~~~~~~
| In file included from /usr/include/openssl/dsa.h:51,
| from /usr/include/openssl/x509.h:37,
| from /usr/include/openssl/ssl.h:31,
| from ./sendmail.h:46,
| from tls.c:11:
| /usr/include/openssl/dh.h:200:28: note: declared here
| 200 | OSSL_DEPRECATEDIN_3_0 void DH_free(DH *dh);
| | ^~~~~~~
| tls.c: In function ‘get_dh2048’:
| tls.c:157:9: warning: ‘DH_new’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
| 157 | if ((dh=DH_new()) == NULL)
| | ^~
| In file included from /usr/include/openssl/dsa.h:51,
| from /usr/include/openssl/x509.h:37,
| from /usr/include/openssl/ssl.h:31,
| from ./sendmail.h:46,
| from tls.c:11:
| /usr/include/openssl/dh.h:199:27: note: declared here
| 199 | OSSL_DEPRECATEDIN_3_0 DH *DH_new(void);
| | ^~~~~~
| tls.c:169:11: error: invalid use of incomplete typedef ‘DH’ {aka ‘struct dh_st’}
| 169 | dh->p=BN_bin2bn(dh2048_p,sizeof(dh2048_p),NULL);
| | ^~
| tls.c:170:11: error: invalid use of incomplete typedef ‘DH’ {aka ‘struct dh_st’}
| 170 | dh->g=BN_bin2bn(dh2048_g,sizeof(dh2048_g),NULL);
| | ^~
| tls.c:171:16: error: invalid use of incomplete typedef ‘DH’ {aka ‘struct dh_st’}
| 171 | if ((dh->p == NULL) || (dh->g == NULL))
| | ^~
| tls.c:171:35: error: invalid use of incomplete typedef ‘DH’ {aka ‘struct dh_st’}
| 171 | if ((dh->p == NULL) || (dh->g == NULL))
| | ^~
| tls.c:173:17: warning: ‘DH_free’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
| 173 | DH_free(dh);
| | ^~~~~~~
| In file included from /usr/include/openssl/dsa.h:51,
| from /usr/include/openssl/x509.h:37,
| from /usr/include/openssl/ssl.h:31,
| from ./sendmail.h:46,
| from tls.c:11:
| /usr/include/openssl/dh.h:200:28: note: declared here
| 200 | OSSL_DEPRECATEDIN_3_0 void DH_free(DH *dh);
| | ^~~~~~~
| tls.c: In function ‘inittls’:
| tls.c:1186:13: warning: ‘RSA_generate_key’ is deprecated: Since OpenSSL 0.9.8 [-Wdeprecated-declarations]
| 1186 | (rsa_tmp = RSA_generate_key(RSA_KEYLENGTH, RSA_F4, NULL,
| | ^
| In file included from /usr/include/openssl/x509.h:36,
| from /usr/include/openssl/ssl.h:31,
| from ./sendmail.h:46,
| from tls.c:11:
| /usr/include/openssl/rsa.h:253:30: note: declared here
| 253 | OSSL_DEPRECATEDIN_0_9_8 RSA *RSA_generate_key(int bits, unsigned long e, void
| | ^~~~~~~~~~~~~~~~
…
| make[2]: *** [<builtin>: tls.o] Error 1
For more information see:
https://www.openssl.org/docs/man3.0/man7/migration_guide.html
Sebastian
Reply to: