mirror of
https://github.com/postgres/postgres.git
synced 2025-07-15 19:21:59 +03:00
Make socket option specify just the directory, not the full path.
This commit is contained in:
@ -9,7 +9,7 @@
|
||||
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $Id: pqcomm.h,v 1.45 2000/11/15 18:36:06 petere Exp $
|
||||
* $Id: pqcomm.h,v 1.46 2000/11/22 01:41:14 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -51,17 +51,16 @@ typedef union SockAddr
|
||||
/* Configure the UNIX socket address for the well known port. */
|
||||
|
||||
#if defined(SUN_LEN)
|
||||
#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)))
|
||||
#define UNIXSOCK_LEN(sun) \
|
||||
(SUN_LEN(&(sun)))
|
||||
#else
|
||||
#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)))
|
||||
#define UNIXSOCK_LEN(sun) \
|
||||
(strlen((sun).sun_path)+ offsetof(struct sockaddr_un, sun_path))
|
||||
#endif
|
||||
|
||||
#define UNIXSOCK_PATH(sun,port,defpath) \
|
||||
(snprintf((sun).sun_path, UNIXSOCK_LEN(sun), "%s/.s.PGSQL.%d", (defpath && *(defpath) != '\0') ? (defpath) : "/tmp", (port)))
|
||||
|
||||
/*
|
||||
* We do this because sun_len is in BSD's struct, while others don't.
|
||||
* We never actually set BSD's sun_len, and I can't think of a
|
||||
|
Reference in New Issue
Block a user