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

[PATCH v4 03/15] compat: add inet_pton and inet_ntop prototypes

From
Erik Faye-Lund <kusmabite@gmail.com>
Date
Oct 11, 2010, 21:50 UTC
Message-ID
<1286833829-5116-4-git-send-email-kusmabite@gmail.com>
In-Reply-To
<1286833829-5116-1-git-send-email-kusmabite@gmail.com>
From: Mike Pape <dotzenlabs@gmail.com>

Windows doesn't have inet_pton and inet_ntop, so add prototypes in git-compat-util.h for them.

At the same time include git-compat-util.h in the sources for these functions, so they use the network-wrappers from there on Windows.

Signed-off-by: Mike Pape <dotzenlabs@gmail.com>
Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
---
 Makefile           |    2 ++
 compat/inet_ntop.c |    6 +++---
 compat/inet_pton.c |    8 +++++---
 git-compat-util.h  |    8 ++++++++
 4 files changed, 18 insertions(+), 6 deletions(-)
diff --git a/Makefile b/Makefile
index d9d9419..2aa067a 100644
--- a/Makefile
+++ b/Makefile
@@ -1398,9 +1398,11 @@ endif
 endif
 ifdef NO_INET_NTOP
 	LIB_OBJS += compat/inet_ntop.o
+	BASIC_CFLAGS += -DNO_INET_NTOP
 endif
 ifdef NO_INET_PTON
 	LIB_OBJS += compat/inet_pton.o
+	BASIC_CFLAGS += -DNO_INET_PTON
 endif
 
 ifdef NO_ICONV
diff --git a/compat/inet_ntop.c b/compat/inet_ntop.c
index f444982..e5b46a0 100644
--- a/compat/inet_ntop.c
+++ b/compat/inet_ntop.c
@@ -17,9 +17,9 @@
 
 #include <errno.h>
 #include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
+
+#include "../git-compat-util.h"
+
 #include <stdio.h>
 #include <string.h>
 
diff --git a/compat/inet_pton.c b/compat/inet_pton.c
index 4078fc0..2ec995e 100644
--- a/compat/inet_pton.c
+++ b/compat/inet_pton.c
@@ -17,9 +17,9 @@
 
 #include <errno.h>
 #include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
+
+#include "../git-compat-util.h"
+
 #include <stdio.h>
 #include <string.h>
 
@@ -41,7 +41,9 @@
  */
 
 static int inet_pton4(const char *src, unsigned char *dst);
+#ifndef NO_IPV6
 static int inet_pton6(const char *src, unsigned char *dst);
+#endif
 
 /* int
  * inet_pton4(src, dst)
diff --git a/git-compat-util.h b/git-compat-util.h
index e192831..56dce85 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -387,6 +387,14 @@ static inline void *gitmempcpy(void *dest, const void *src, size_t n)
 }
 #endif
 
+#ifdef NO_INET_PTON
+int inet_pton(int af, const char *src, void *dst);
+#endif
+
+#ifdef NO_INET_NTOP
+const char *inet_ntop(int af, const void *src, char *dst, size_t size);
+#endif
+
 extern void release_pack_memory(size_t, int);
 
 typedef void (*try_to_free_t)(size_t);
-- 
1.7.3.1.199.g72340
Previous: Erik Faye-LundNext: Erik Faye-Lund
Message 12 of 47 in “daemon-win32”
  1. 00/15 daemon-win32Erik Faye-Lund, Oct 11, 2010
  2. 01/15 mingw: add network-wrappers for daemonErik Faye-Lund, Oct 11, 2010
  3. Jonathan NiederOct 11, 2010
  4. 02/15 mingw: implement syslogErik Faye-Lund, Oct 11, 2010
  5. Jonathan NiederOct 11, 2010
  6. Erik Faye-LundOct 11, 2010
  7. Jonathan NiederOct 11, 2010
  8. Erik Faye-LundOct 13, 2010
  9. Eric SunshineOct 13, 2010
  10. Pat ThoytsOct 13, 2010
  11. Erik Faye-LundOct 14, 2010
  12. 03/15 compat: add inet_pton and inet_ntop prototypesErik Faye-Lund, Oct 11, 2010
  13. 04/15 inet_ntop: fix a couple of old-style declsErik Faye-Lund, Oct 11, 2010
  14. 05/15 mingw: use real pidErik Faye-Lund, Oct 11, 2010
  15. 06/15 mingw: support waitpid with pid > 0 and WNOHANGErik Faye-Lund, Oct 11, 2010
  16. 07/15 mingw: add kill emulationErik Faye-Lund, Oct 11, 2010
  17. 08/15 daemon: use run-command api for async servingErik Faye-Lund, Oct 11, 2010
  18. Junio C HamanoOct 13, 2010
  19. Erik Faye-LundOct 14, 2010
  20. Junio C HamanoOct 17, 2010
  21. 09/15 daemon: use full buffered mode for stderrErik Faye-Lund, Oct 11, 2010
  22. 10/15 Improve the mingw getaddrinfo stub to handle more use casesErik Faye-Lund, Oct 11, 2010
  23. 11/15 daemon: report connection from root-processErik Faye-Lund, Oct 11, 2010
  24. Junio C HamanoOct 13, 2010
  25. Erik Faye-LundOct 14, 2010
  26. Junio C HamanoOct 17, 2010
  27. Erik Faye-LundOct 17, 2010
  28. 12/15 mingw: import poll-emulation from gnulibErik Faye-Lund, Oct 11, 2010
  29. 13/15 mingw: use poll-emulation from gnulibErik Faye-Lund, Oct 11, 2010
  30. 14/15 daemon: use socklen_tErik Faye-Lund, Oct 11, 2010
  31. 15/15 daemon: opt-out on features that require posixErik Faye-Lund, Oct 11, 2010
  32. Junio C HamanoOct 13, 2010
  33. Erik Faye-LundOct 14, 2010
  34. Junio C HamanoOct 15, 2010
  35. Erik Faye-LundOct 18, 2010
  36. Jonathan NiederOct 18, 2010
  37. Andreas SchwabOct 18, 2010
  38. empty structsJonathan Nieder, Oct 18, 2010
  39. Erik Faye-LundOct 21, 2010
  40. Erik Faye-LundOct 21, 2010
  41. Jonathan NiederOct 21, 2010
  42. Erik Faye-LundOct 21, 2010
  43. Junio C HamanoOct 21, 2010
  44. Junio C HamanoOct 18, 2010
  45. Erik Faye-LundOct 21, 2010
  46. Jonathan NiederOct 21, 2010
  47. Erik Faye-LundOct 21, 2010

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.