Hi, we got some problem with building PostgreSQL (version 15.1) on linux 
ldd —version returns
ldd (Debian GLIBC 2.31-13+deb11u5.tmw1) 2.31

we can build it all right, however we want to use binaries on different glibc 
version

so we’re detecting usage of the glibc version > 2.17 and we need to prevent 
usage

of symbols (like explicit_bzero), that wasn’t exist in glibc 2.17.

what we see that even if I commented line 

$as_echo "#define HAVE_EXPLICIT_BZERO 1" >>confdefs.h

from configure we still have a problem - symbol explicit_bzero was leaked in 

lib/libpq.so.5.15, bin/postgres, bin/pg_verifybackup

I was able to verify that HAVE_EXPLICIT_BZERO wasn’t defined 

in all c files that use  explicit_bzero: 

./src/interfaces/libpq/fe-connect.c
./src/backend/libpq/be-secure-common.c
./src/common/hmac_openssl.c
./src/common/cryptohash.c
./src/common/cryptohash_openssl.c
./src/common/hmac.c

how we can guaranty that if HAVE_EXPLICIT_BZERO is not defined then

explicit_bzero function implemented in port/explicit_bzero.c will be used (just 
like in Darwin or windows)

thanks in advance

dm




Reply via email to