Re: Re: [BUGS] BUG #13611: test_postmaster_connection failed (Windows, listen_addresses = '0.0.0.0' or '::') - Mailing list pgsql-hackers

From Tatsuo Ishii
Subject Re: Re: [BUGS] BUG #13611: test_postmaster_connection failed (Windows, listen_addresses = '0.0.0.0' or '::')
Date
Msg-id 20151029.173936.1376347971522153564.t-ishii@sraoss.co.jp
Whole thread Raw
In response to Re: Re: [BUGS] BUG #13611: test_postmaster_connection failed (Windows, listen_addresses = '0.0.0.0' or '::')  (Noah Misch <noah@leadboat.com>)
Responses Re: Re: [BUGS] BUG #13611: test_postmaster_connection failed (Windows, listen_addresses = '0.0.0.0' or '::')  (Noah Misch <noah@leadboat.com>)
List pgsql-hackers
> 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?

Please go ahead and commit.

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

I think back patching with #ifdefs is better. On Windows etc. the case
has been broken anyway and the fix should only bring benefits to users.

Best regards,
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese:http://www.sraoss.co.jp



pgsql-hackers by date:

Previous
From: Amit Langote
Date:
Subject: Re: Cross-check recent documentation changes
Next
From: Vladimir Borodin
Date:
Subject: Re: [ADMIN] Replication slots and isolation levels