Re: listening addresses

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: listening addresses
Дата
Msg-id 26180.1079889573@sss.pgh.pa.us
обсуждение исходный текст
Ответ на listening addresses  (Andrew Dunstan <andrew@dunslane.net>)
Ответы Re: listening addresses  (Andrew Dunstan <andrew@dunslane.net>)
Re: listening addresses  (Andrew Dunstan <andrew@dunslane.net>)
Список pgsql-patches
Andrew Dunstan <andrew@dunslane.net> writes:
> Submitted for review.

Okay, some random comments:

> ! char       *ListenAddresses = "localhost";

I think you made this mistake in the log_line_prefix patch too.  The
contents of a GUC string var should always be either NULL or a pointer
to a malloc'd string --- ergo, its initial state must be NULL.  It's
pure luck that GUC doesn't dump core trying to free() this pointer.

> +     /*
> +      * check if ListenAddresses is empty or all spaces
> +      */

Why do you need this test (or the NetServer bool) at all?  Just scan
the string and bind to whatever it mentions.

BTW it'd be better to use isspace() instead of a hardwired test for ' '.

> !         if (strcmp(ListenAddresses,"*") != 0)

This seems a bit nonrobust since it will fail if any whitespace is
added.  I think it'd be better to test whether any individual hostname
extracted from the string is '*'.

> +     if (ListenSocket[0] == -1)
> +         ereport(FATAL,
> +                 (errmsg("not listening on any socket")));

Good but I don't like the wording of the error very much.  Maybe "could
not bind to any socket"?  Doesn't seem quite right either.  [thinks...]
There are really two cases here:
    * listen_addresses is empty and the machine doesn't have Unix
      sockets
    * listen_addresses contains (only) bogus addresses, and the
      machine doesn't have Unix sockets.
"not listening on any socket" seems to focus on the first case, "could
not bind to any socket" focuses on the second.  Can we cover both?

Please revise, and update the docs too.

            regards, tom lane

В списке pgsql-patches по дате отправления:

Предыдущее
От: Andrew Dunstan
Дата:
Сообщение: listening addresses
Следующее
От: Tom Lane
Дата:
Сообщение: Re: [HACKERS] listening addresses