[Bug 274654] Cannot rebuild Sendmail with OpenSSL 3.0.11 on FreeBSD 12.4

From: <bugzilla-noreply_at_freebsd.org>
Date: Sun, 22 Oct 2023 17:47:09 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=274654

            Bug ID: 274654
           Summary: Cannot rebuild Sendmail with OpenSSL 3.0.11 on FreeBSD
                    12.4
           Product: Base System
           Version: 12.4-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: busheval@gmail.com

Hi,
When I rebuilded ports after update perl5 from version 5.34 to 5.36 on my
FreeBSD 12.4 server: 
# portmaster -f `pkg shlib -qR libperl.so.5.34`

Openssl-1.1.1w update to 3.0.11 too. After this I rebuilded ports:
# portmaster -f `pkg shlib -qR libcrypto.so.11`

All ports rebuilded fine, but sendmail not run now.
If I try rebuild sendmail:

# cd /usr/src/lib/libsm
# make clean && make obj && make depend && make
# cd /usr/src/lib/libsmutil
# make clean && make obj && make depend && make
# cd /usr/src/usr.sbin/sendmail
# make clean && make obj && make depend && make && make install

Error occured:
/usr/src/contrib/sendmail/src/tls.c:99:4: error: incomplete definition of type
'struct dh_st'
        dh->p = BN_bin2bn(dh512_p, sizeof(dh512_p), NULL);
        ~~^
/usr/local/include/openssl/types.h:134:16: note: forward declaration of 'struct
dh_st'
typedef struct dh_st DH;
               ^
/usr/src/contrib/sendmail/src/tls.c:100:4: error: incomplete definition of type
'struct dh_st'
        dh->g = BN_bin2bn(dh512_g, sizeof(dh512_g), NULL);
        ~~^
/usr/local/include/openssl/types.h:134:16: note: forward declaration of 'struct
dh_st'
typedef struct dh_st DH;
               ^
/usr/src/contrib/sendmail/src/tls.c:101:9: error: incomplete definition of type
'struct dh_st'
        if ((dh->p == NULL) || (dh->g == NULL))
             ~~^
/usr/local/include/openssl/types.h:134:16: note: forward declaration of 'struct
dh_st'
typedef struct dh_st DH;
               ^
/usr/src/contrib/sendmail/src/tls.c:101:28: error: incomplete definition of
type 'struct dh_st'
        if ((dh->p == NULL) || (dh->g == NULL))
....
27 warnings and 8 errors generated.
*** Error code 1

Stop.
make: stopped in /usr/src/usr.sbin/sendmail



# uname -a
FreeBSD mail 12.4-RELEASE-p6 FreeBSD 12.4-RELEASE-p6 GENERIC  amd64

# grep -v "^#" /etc/make.conf
DEFAULT_VERSIONS+= ssl=openssl bdb=18
OPTIONS_UNSET= X11
SENDMAIL_CFLAGS=-I/usr/local/include -DSASL=2
SENDMAIL_LDADD=/usr/local/lib/libsasl2.so
OPTIONS_SET= BDB6_PERMITTED


The problem is similar to the one described here:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244937

But the solution didn't work for me.

-- 
You are receiving this mail because:
You are the assignee for the bug.