From e921ff1779e99f6ef27bdfad79728c6e664913a3 Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Wed, 22 Nov 2000 02:47:30 +0000
Subject: [PATCH] Back out socket path until it works.

---
 src/include/libpq/pqcomm.h | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/include/libpq/pqcomm.h b/src/include/libpq/pqcomm.h
index f7f40251bdd..c44ce681b51 100644
--- a/src/include/libpq/pqcomm.h
+++ b/src/include/libpq/pqcomm.h
@@ -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.47 2000/11/22 02:38:25 momjian Exp $
+ * $Id: pqcomm.h,v 1.48 2000/11/22 02:47:30 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -51,16 +51,17 @@ 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), "/tmp/.s.PGSQL.%d", (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
-- 
GitLab