Bruce Momjian <[EMAIL PROTECTED]> writes:
>> Peter Eisentraut <[EMAIL PROTECTED]> writes:
>>>> Should the parameter determine the directory or the full file name?  I'd
>>>> go for the former, but it's not a strong case.
>> 
>> Directory was what I had in mind too, but I'm not sure what Bruce
>> actually did ...

> I did whatever the patch did.  I believe it is the full path.  I believe
> it is used here:

> #define UNIXSOCK_PATH(sun,port,defpath) \
>         ((defpath && defpath[0] != '\0') ? (strncpy((sun).sun_path,
> defpath, sizeof((sun).sun_path)),
> (sun).sun_path[sizeof((sun).sun_path)-1] = '\0') :
> sprintf((sun).sun_path, "/tmp/.s.PGSQL.%d", (port)))

Hmm.  I think it would make more sense to make the parameter be just
the directory, not the full path including filename --- for one thing,
doing it like that renders the port-number parameter useless.  Why not

#define UNIXSOCK_PATH(sun,port,defpath) \
    snprintf((sun).sun_path, sizeof((sun).sun_path), "%s/.s.PGSQL.%d", \
             (((defpath) && *(defpath) != '\0') ? (defpath) : "/tmp"), \
             (port))

                        regards, tom lane

Reply via email to