Re: pgsql: Remove IS_AF_UNIX macro

From: Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: Re: pgsql: Remove IS_AF_UNIX macro
Date: 2022-02-16 16:06:12
Message-ID: 2c53ab2c-e14d-eb00-554e-5520bdbc8d3c@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers


On 15.02.22 16:41, Tom Lane wrote:
> Peter Eisentraut <peter(at)eisentraut(dot)org> writes:
>> Remove IS_AF_UNIX macro
>> The AF_UNIX macro was being used unprotected by HAVE_UNIX_SOCKETS,
>> apparently since 2008.
>
> I hadn't looked closely at this patch, but are you referring to
> this bit in ip.h?
>
> #ifdef HAVE_UNIX_SOCKETS
> #define IS_AF_UNIX(fam) ((fam) == AF_UNIX)
> #else
> #define IS_AF_UNIX(fam) (0)
> #endif
>
> That's by no means "unprotected": we will not try to reference
> AF_UNIX unless HAVE_UNIX_SOCKETS is set.

In src/backend/utils/adt/pgstatfuncs.c there is a use of AF_UNIX that
has been there unprotected by any #ifdef since about 2008.

> We might as well just nuke
> all the HAVE_UNIX_SOCKETS conditional compilation if we let
> this stand.
>
> (Now, maybe we should indeed do that. I don't have much
> interest in the possibility that we'll worry about such
> platforms in future.)

Maybe/probably. But there is a difference between platforms having the
AF_UNIX symbol (which is required by POSIX unconditionally) and
platforms actually having Unix sockets or not (which might require
different default configurations or run-time behavior), so the two
questions are not that closely connected.

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2022-02-16 16:13:35 Re: pgsql: Remove IS_AF_UNIX macro
Previous Message Julien Rouhaud 2022-02-16 15:42:46 Re: pgsql: Move scanint8() to numutils.c