aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--wsutil/inet_v6defs.h10
-rw-r--r--wsutil/libwsutil.def3
2 files changed, 12 insertions, 1 deletions
diff --git a/wsutil/inet_v6defs.h b/wsutil/inet_v6defs.h
index dc770f89c5..f02faf0f7e 100644
--- a/wsutil/inet_v6defs.h
+++ b/wsutil/inet_v6defs.h
@@ -28,6 +28,16 @@
* Versions of "inet_pton()" and "inet_ntop()", for the benefit of OSes that
* don't have it.
*/
+
+/* Windows does not have inet_pton() until Vista. In order to allow binaries
+ * compiled on Vista or later to work on pre-Vista Windows (without resorting
+ * to fragile link ordering tricks), we rename our inet_pton() to
+ * ws_inet_pton().
+ */
+#ifdef WIN32
+#define inet_pton ws_inet_pton
+#endif
+
extern int inet_pton(int af, const char *src, void *dst);
#ifndef HAVE_INET_NTOP_PROTO
extern const char *inet_ntop(int af, const void *src, char *dst,
diff --git a/wsutil/libwsutil.def b/wsutil/libwsutil.def
index e0e0202187..7bb5ae2aaf 100644
--- a/wsutil/libwsutil.def
+++ b/wsutil/libwsutil.def
@@ -29,7 +29,8 @@ inet_aton
inet_ntop
; inet_pton.c
-inet_pton
+; Note: inet_v6defs.h renames this function for Windows (only)
+ws_inet_pton
; mpeg-audio.c
mpa_bitrate