diff options
author | Mike Pape <dotzenlabs@gmail.com> | 2010-11-04 02:35:11 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-11-04 16:53:49 -0700 |
commit | da523cc597b1be7fe61ee870cf93b142e70fab7f (patch) | |
tree | 38149dba3a2f29a898352874895bd03f4d79649d | |
parent | 088d880247dc7bb1a27f07e320bab7f9b63e06bc (diff) | |
download | git-da523cc597b1be7fe61ee870cf93b142e70fab7f.tar.gz |
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 <dotzenlabs@gmail.com>
Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | compat/inet_ntop.c | 6 | ||||
-rw-r--r-- | compat/inet_pton.c | 8 | ||||
-rw-r--r-- | git-compat-util.h | 8 |
4 files changed, 18 insertions, 6 deletions
@@ -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 f44498258d..e5b46a0f21 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 4078fc0877..2ec995e63d 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 e192831961..56dce85884 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); |