Permalink
Browse files

Windows build targets have socklen_t definition in ws2tcpip.h but some

versions of ws2tcpip.h do not have the definition. It seems that when
the socklen_t definition is missing from ws2tcpip.h the definition for
INET_ADDRSTRLEN is also missing, and that when one definition is present
the other one also is available.
  • Loading branch information...
1 parent b68a432 commit 269e082f77c34db23eed4e875389f5c8a20fcd5d @yangtse yangtse committed Oct 24, 2007
Showing with 18 additions and 9 deletions.
  1. +0 −5 config-win32.h
  2. +0 −4 setup.h
  3. +18 −0 setup_once.h
View
@@ -146,11 +146,6 @@
#define ssize_t int
#endif
-/* Define to 'int' if socklen_t is not an available 'typedefed' type */
-#ifndef HAVE_WS2TCPIP_H
-#define socklen_t int
-#endif
-
/* ---------------------------------------------------------------- */
/* STRUCT RELATED */
/* ---------------------------------------------------------------- */
View
@@ -97,10 +97,6 @@
#define ssize_t int
#endif
-#ifndef HAVE_WS2TCPIP_H
-#define socklen_t int
-#endif
-
#endif /* HAVE_CONFIG_H */
/*
View
@@ -91,6 +91,24 @@ struct timeval {
#endif
+/*
+ * Windows build targets have socklen_t definition in
+ * ws2tcpip.h but some versions of ws2tcpip.h do not
+ * have the definition. It seems that when the socklen_t
+ * definition is missing from ws2tcpip.h the definition
+ * for INET_ADDRSTRLEN is also missing, and that when one
+ * definition is present the other one also is available.
+ */
+
+#if defined(WIN32) && !defined(HAVE_SOCKLEN_T)
+# if ( defined(_MSC_VER) && !defined(INET_ADDRSTRLEN) ) || \
+ (!defined(_MSC_VER) && !defined(HAVE_WS2TCPIP_H) )
+# define socklen_t int
+# define HAVE_SOCKLEN_T
+# endif
+#endif
+
+
#if defined(__minix)
/* Minix doesn't support recv on TCP sockets */
#define sread(x,y,z) (ssize_t)read((RECV_TYPE_ARG1)(x), \

0 comments on commit 269e082

Please sign in to comment.