msys inet_pton strangeness

Andrew Dunstan <andrew@dunslane.net>

From: Andrew Dunstan <andrew@dunslane.net>
To: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2024-09-28T13:50:29Z
Lists: pgsql-hackers
A week or so ago I upgraded the msys2 animal fairywren to the latest 
msys2, and ever since then the build has been failing for Release 15. 
It's complaining like this:

ccache gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -O2  -DFRONTEND -DUNSAFE_STAT_OK -I/home/pgrunner/bf/root/REL_15_STABLE/pgsql.build/../pgsql/src/interfaces/libpq -I../../../src/include -I/home/pgrunner/bf/root/REL_15_STABLE/pgsql.build/../pgsql/src/include  -I../pgsql/src/include/port/win32  -I/c/progra~1/openssl-win64/include "-I/home/pgrunner/bf/root/REL_15_STABLE/pgsql.build/../pgsql/src/include/port/win32" -DWIN32_STACK_RLIMIT=4194304 -I../../../src/port -I/home/pgrunner/bf/root/REL_15_STABLE/pgsql.build/../pgsql/src/port -DSO_MAJOR_VERSION=5  -c -o fe-secure-common.o /home/pgrunner/bf/root/REL_15_STABLE/pgsql.build/../pgsql/src/interfaces/libpq/fe-secure-common.c
C:/tools/xmsys64/home/pgrunner/bf/root/REL_15_STABLE/pgsql/src/interfaces/libpq/fe-secure-common.c: In function 'pq_verify_peer_name_matches_certificate_ip':
C:/tools/xmsys64/home/pgrunner/bf/root/REL_15_STABLE/pgsql/src/interfaces/libpq/fe-secure-common.c:219:21: error: implicit declaration of function 'inet_pton'; did you mean 'inet_aton'? [-Wimplicit-function-declaration]
   219 |                 if (inet_pton(AF_INET6, host, &addr) == 1)
       |                     ^~~~~~~~~
       |                     inet_aton
make[3]: *** [<builtin>: fe-secure-common.o] Error 1

configure has determined that we have inet_pton, and I have repeated the 
test manually. It's not a ccache issue - I have cleared the cache and 
the problem persists. The test run by meson on the same animal reports 
not finding the function.

So I'm a bit flummoxed about how to fix this, and would appreciate any 
suggestions.


cheers


andrew

--
Andrew Dunstan
EDB:https://www.enterprisedb.com

Commits

  1. Bump MIN_WINNT for MINGW to clear a build error

  2. Make Windows 10 the minimal runtime requirement for WIN32

  3. libpq: Allow IP address SANs in server certificates