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

Alvaro Herrera <alvherre@2ndquadrant.com>

From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Michael Paquier <michael@paquier.xyz>, hghwng@gmail.com, pgsql-bugs@lists.postgresql.org
Date: 2020-03-30T15:48:51Z
Lists: pgsql-bugs
On 2020-Mar-30, Tom Lane wrote:

> 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.

That was my impression too.

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



Commits

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

  2. psql: Show IP address in \conninfo