Re: BUG #16330: psql accesses null pointer in connect.c:do_connect

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Michael Paquier <michael@paquier.xyz>
Cc: hghwng@gmail.com, pgsql-bugs@lists.postgresql.org, Alvaro Herrera <alvherre@2ndquadrant.com>
Date: 2020-03-30T15:35:41Z
Lists: pgsql-bugs
Michael Paquier <michael@paquier.xyz> writes:
> On Mon, Mar 30, 2020 at 02:20:48AM +0000, PG Bug reporting form wrote:
>> If the connection to postmaster is closed, then trying to re-connect to
>> another one leads to SIGSEGV.

> A fix like the attached should be sufficient as if we know that
> PQhost() is NULL for the old connection we cannot use the old
> hostaddr.  Alvaro, what do you think?

It looks to me like there's a similar hazard a bit further down
(line 3029):

		appendConnStrVal(&connstr, PQdb(o_conn));

I wonder if we should force reuse_previous to false if there's
no o_conn, rather than fixing this stuff piecemeal.

			regards, tom lane



Commits

  1. Fix crash in psql when attempting to reuse old connection

  2. psql: Show IP address in \conninfo