Add missing bad-PGconn guards in libpq entry points.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 15 Aug 2022 19:40:07 +0000 (15:40 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 15 Aug 2022 19:40:07 +0000 (15:40 -0400)
commite37e9a65517552e79614a1c81c8aff216d033e59
treeb1465c039b81d8e8c6bdeaba6d6cf2a3e55fea0e
parentbcf7eb99bbf15954a92df0a4405713d561402be2
Add missing bad-PGconn guards in libpq entry points.

There's a convention that externally-visible libpq functions should
check for a NULL PGconn pointer, and fail gracefully instead of
crashing.  PQflush() and PQisnonblocking() didn't get that memo
though.  Also add a similar check to PQdefaultSSLKeyPassHook_OpenSSL;
while it's not clear that ordinary usage could reach that with a
null conn pointer, it's cheap enough to check, so let's be consistent.

Daniele Varrazzo and Tom Lane

Discussion: https://postgr.es/m/CA+mi_8Zm_mVVyW1iNFgyMd9Oh0Nv8-F+7Y3-BqwMgTMHuo_h2Q@mail.gmail.com
src/interfaces/libpq/fe-exec.c
src/interfaces/libpq/fe-secure-openssl.c