From da523cc597b1be7fe61ee870cf93b142e70fab7f Mon Sep 17 00:00:00 2001 From: Mike Pape Date: Thu, 4 Nov 2010 02:35:11 +0100 Subject: [PATCH] compat: add inet_pton and inet_ntop prototypes 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 Signed-off-by: Erik Faye-Lund Signed-off-by: Junio C Hamano --- 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 d9d941933..2aa067aaf 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 f44498258..e5b46a0f2 100644 --- a/compat/inet_ntop.c +++ b/compat/inet_ntop.c @@ -17,9 +17,9 @@ #include #include -#include -#include -#include + +#include "../git-compat-util.h" + #include #include diff --git a/compat/inet_pton.c b/compat/inet_pton.c index 4078fc087..2ec995e63 100644 --- a/compat/inet_pton.c +++ b/compat/inet_pton.c @@ -17,9 +17,9 @@ #include #include -#include -#include -#include + +#include "../git-compat-util.h" + #include #include @@ -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 e19283196..56dce8588 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); -- 2.30.2