On Tue, Oct 27, 2015 at 05:31:25PM +0900, Tatsuo Ishii wrote:
> > No, PQping("host='127.0.0.1'") fails to reach a listen_addresses='::' server
> > on many systems.  Here's what I thought Kondo was proposing:
> > 
> > --- a/src/bin/pg_ctl/pg_ctl.c
> > +++ b/src/bin/pg_ctl/pg_ctl.c
> > @@ -649,5 +649,9 @@ test_postmaster_connection(pgpid_t pm_pid, bool 
> > do_checkpoint)
> >  
> > -                                           /* If postmaster is listening 
> > on "*", use localhost */
> > +                                           /* explanation here */
> >                                             if (strcmp(host_str, "*") == 0)
> >                                                     strcpy(host_str, 
> > "localhost");
> > +                                           else if (strcmp(host_str, 
> > "0.0.0.0") == 0)
> > +                                                   strcpy(host_str, 
> > "127.0.0.1");
> > +                                           else if (strcmp(host_str, "::") 
> > == 0)
> > +                                                   strcpy(host_str, "::1");
> >  
> 
> I see. Would you like to commit this?

I am happy to finish it, but I am no less happy if you finish it.  Which do
you prefer?

Should the back-branch commits mirror the master branch?  A more-cautious
alternative would be to, in back branches, wrap the change in #ifdefs so it
takes effect only on Windows, OpenBSD and NetBSD.  It could break setups with
local firewall rules that block connections to "127.0.0.1" or "::1" without
blocking "0.0.0.0" or "::".  Such firewall rules sound outlandish enough that
I would be fairly comfortable not worrying about this and making the change
unconditional in all branches.  It's a judgment call, though.


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to