Re: pg_getaddrinfo_all() with hintp=NULL

Поиск
Список
Период
Сортировка
От Sergey Tatarintsev
Тема Re: pg_getaddrinfo_all() with hintp=NULL
Дата
Msg-id dd0a6702-9469-4fd4-bb9a-cb529153b8ea@postgrespro.ru
обсуждение исходный текст
Ответ на Re: pg_getaddrinfo_all() with hintp=NULL  (Daniel Gustafsson <daniel@yesql.se>)
Ответы Re: pg_getaddrinfo_all() with hintp=NULL
Список pgsql-hackers
11.11.2025 23:23, Daniel Gustafsson пишет:
>> On 10 Nov 2025, at 06:14, Sergey Tatarintsev <s.tatarintsev@postgrespro.ru> wrote:
>> I'm trying to use pg_getaddrinfo_all() with NULL hints, but got segfault.
>> According to man(3) getaddrinfo, hints may be passed as NULL. In this case af_family
>> is equivalent to AF_UNSPEC.
> Right, but pg_getaddrinfo_all isn't getaddrinfo and doesn't claim to be.  Since
> pg_getaddrinfo_all can return AF_UNIX as opposed to getaddrinfo, it's not clear
> why hints == NULL should mean ipv4|ipv6 here.
>
> Accepting NULL or also (subtly) breaks the API for pg_freeaddrinfo_all which is
> defined to take ai_family from the hints passed to pg_getaddrinfo_all.  Now,
> reading the code makes it obvious that it will work anyways, but at the very
> least a patch to accept a NULL hint should update the function comment for
> pg_freeaddrinfo_all.
>
> --
> Daniel Gustafsson
>
Daniel, thanks for review!

I added a comment to pg_freeaddrinfo_all.
I don't think it made sense to comment that hint_ai_family simply 
shouldn't be equal to AF_UNIX,
so I specified that if the original hints were NULL, hint_ai_family 
should be equal to AF_UNSPEC.

-- 
With best regards,
Sergey Tatarintsev,
PostgresPro

Вложения

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