]> granicus.if.org Git - postgresql/commit
Be more paranoid about null return values from libpq status functions.
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 25 Nov 2015 22:31:53 +0000 (17:31 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 25 Nov 2015 22:31:53 +0000 (17:31 -0500)
commit55a2cc844216838d743cae7d94bd4f38acc62d1e
treef1ef6943e8ad3462e1e6cad26e88c20a5dacc6bc
parentb17dbf26293e3805b5f7ab5a11a8e3f984c476ad
Be more paranoid about null return values from libpq status functions.

PQhost() can return NULL in non-error situations, namely when a Unix-socket
connection has been selected by default.  That behavior is a tad debatable
perhaps, but for the moment we should make sure that psql copes with it.
Unfortunately, do_connect() failed to: it could pass a NULL pointer to
strcmp(), resulting in crashes on most platforms.  This was reported as a
security issue by ChenQin of Topsec Security Team, but the consensus of
the security list is that it's just a garden-variety bug with no security
implications.

For paranoia's sake, I made the keep_password test not trust PQuser or
PQport either, even though I believe those will never return NULL given
a valid PGconn.

Back-patch to all supported branches.
src/bin/psql/command.c