git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/3] index-helper: fix UNIX_PATH_MAX redefinition error on cygwin

From
Ramsay Jones <ramsay@ramsayjones.plus.com>
Date
Apr 10, 2016, 22:59 UTC
Message-ID
<570ADAEE.20201@ramsayjones.plus.com>
Signed-off-by: Ramsay Jones <ramsay@ramsayjones.plus.com>
---
 git-compat-util.h | 17 -----------------
 index-helper.c    |  4 ++--
 read-cache.c      |  2 +-
 3 files changed, 3 insertions(+), 20 deletions(-)
diff --git a/git-compat-util.h b/git-compat-util.h
index 0e35c13..c90c8c6 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -1043,21 +1043,4 @@ struct tm *git_gmtime_r(const time_t *, struct tm *);
 #define getc_unlocked(fh) getc(fh)
 #endif
 
-#ifdef __linux__
-#define UNIX_PATH_MAX 108
-#elif defined(__APPLE__) || defined(BSD)
-#define UNIX_PATH_MAX 104
-#else
-/*
- * Quoth POSIX: The size of sun_path has intentionally been left
- * undefined. This is because different implementations use different
- * sizes. For example, 4.3 BSD uses a size of 108, and 4.4 BSD uses a
- * size of 104. Since most implementations originate from BSD
- * versions, the size is typically in the range 92 to 108.
- *
- * Thanks, POSIX!  Super-helpful!  Hope we don't overflow any buffers!
- */
-#define UNIX_PATH_MAX 92
-#endif
-
 #endif
diff --git a/index-helper.c b/index-helper.c
index 4d08ff4..4a8e2ae 100644
--- a/index-helper.c
+++ b/index-helper.c
@@ -309,7 +309,7 @@ static int setup_socket(const char *socket_path)
 	int len;
 
 	len = strlen(socket_path);
-	if (len > UNIX_PATH_MAX - 1)
+	if (len > sizeof(address.sun_path) - 1)
 		die("path %s is too long for a socket", socket_path);
 
 	fd = socket(PF_UNIX, SOCK_STREAM, 0);
@@ -317,7 +317,7 @@ static int setup_socket(const char *socket_path)
 		return -1;
 
 	address.sun_family = AF_UNIX;
-	strncpy(address.sun_path, socket_path, UNIX_PATH_MAX);
+	strncpy(address.sun_path, socket_path, sizeof(address.sun_path));
 
 	if (bind(fd, (struct sockaddr *) &address, sizeof(address)))
 		die_errno(_("failed to bind to socket %s"), socket_path);
diff --git a/read-cache.c b/read-cache.c
index ab2fbaa..c7053d8 100644
--- a/read-cache.c
+++ b/read-cache.c
@@ -1728,7 +1728,7 @@ int connect_to_index_helper(void)
 	int fd;
 
 	if (readlink(git_path("index-helper.path"), address.sun_path,
-		     UNIX_PATH_MAX) < 0)
+		     sizeof(address.sun_path)) < 0)
 		return -1;
 
 	fd = socket(PF_UNIX, SOCK_STREAM, 0);
-- 
2.8.0
Next: Torsten Bögershausen
Message 1 of 4 in “index-helper: fix UNIX_PATH_MAX redefinition error on cygwin”
  1. 1/3 index-helper: fix UNIX_PATH_MAX redefinition error on cygwinRamsay Jones, Apr 10, 2016
  2. Torsten BögershausenApr 11, 2016
  3. Ramsay JonesApr 11, 2016
  4. David TurnerApr 11, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.