[PATCH] compat: only replace hstrerror if NO_IPV6.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Modern POSIX-1.2024 systems might only have getaddrinfo(3) but not
gethostbyname(3) (and hstrerror(3)). Git will only use getaddrinfo
in this case and not hstrerror, but will still attempt to replace
the missing hstrerror function, and the build fails due to the
missing the error constants.

This change declares githstrerror only if it is going to be used.

Signed-off-by: Jonas 'Sortie' Termansen <sortie@xxxxxxxxx>
---
 compat/hstrerror.c | 2 ++
 git-compat-util.h  | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/compat/hstrerror.c b/compat/hstrerror.c
index b85a2fa956..0a481d97dc 100644
--- a/compat/hstrerror.c
+++ b/compat/hstrerror.c
@@ -2,6 +2,7 @@
 #include <stdio.h>
 #include <netdb.h>
 
+#ifdef NO_IPV6
 const char *githstrerror(int err)
 {
 	static char buffer[48];
@@ -19,3 +20,4 @@ const char *githstrerror(int err)
 	snprintf(buffer, sizeof(buffer), "Name resolution error %d", err);
 	return buffer;
 }
+#endif
diff --git a/git-compat-util.h b/git-compat-util.h
index e4a306dd56..4a1072b9cf 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -930,10 +930,12 @@ uintmax_t gitstrtoumax(const char *, char **, int);
 intmax_t gitstrtoimax(const char *, char **, int);
 #endif
 
+#ifdef NO_IPV6
 #ifdef NO_HSTRERROR
 #define hstrerror githstrerror
 const char *githstrerror(int herror);
 #endif
+#endif
 
 #ifdef NO_MEMMEM
 #define memmem gitmemmem
-- 
2.45.2





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux