packages feed

network 2.2.1.2 → 2.2.1.3

raw patch · 5 files changed

+261/−18 lines, 5 files

Files

Network.hs view
@@ -62,6 +62,7 @@        ) where  import Control.Monad (liftM)+import Data.Maybe (fromJust) import Network.BSD import Network.Socket hiding ( accept, socketPort, recvFrom, sendTo, PortNumber ) import qualified Network.Socket as Socket ( accept )@@ -269,9 +270,19 @@ #if defined(IPV6_SOCKET_SUPPORT) accept sock@(MkSocket _ AF_INET6 _ _ _) = do  (sock', addr) <- Socket.accept sock- (Just peer, _) <- getNameInfo [] True False addr+ peer <- catchIO ((fromJust . fst) `liftM` getNameInfo [] True False addr) $+         \_ -> case addr of+                 SockAddrInet  _   a   -> inet_ntoa a+                 SockAddrInet6 _ _ a _ -> return (show a)+# if !defined(mingw32_HOST_OS) && !defined(cygwin32_HOST_OS) && !defined(_WIN32)+                 SockAddrUnix      a   -> return a+# endif+                 a                     -> return (show a)  handle <- socketToHandle sock' ReadWriteMode- (PortNumber port) <- socketPort sock'+ let port = case addr of+              SockAddrInet  p _     -> p+              SockAddrInet6 p _ _ _ -> p+              _                     -> -1  return (handle, peer, port) #endif #if !defined(mingw32_HOST_OS) && !defined(cygwin32_HOST_OS) && !defined(_WIN32)
configure view
@@ -1795,6 +1795,20 @@   +ac_includes_default="$ac_includes_default+#ifdef HAVE_NETDB_H+# include <netdb.h>+#endif+#ifdef HAVE_WINSOCK2_H+# include <winsock2.h>+#endif+#ifdef HAVE_WS2TCPIP_H+# include <ws2tcpip.h>+#endif+#ifdef HAVE_WSPIAPI_H+# include <wspiapi.h>+#endif"+ # Safety check: Ensure that we are in the correct source directory.  @@ -3588,7 +3602,9 @@   -for ac_header in fcntl.h limits.h stdlib.h sys/types.h unistd.h winsock.h+++for ac_header in fcntl.h limits.h stdlib.h sys/types.h unistd.h winsock2.h ws2tcpip.h wspiapi.h do as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then@@ -4503,7 +4519,197 @@ fi  -for ac_func in getaddrinfo+{ $as_echo "$as_me:$LINENO: checking for _head_libws2_32_a in -lws2_32" >&5+$as_echo_n "checking for _head_libws2_32_a in -lws2_32... " >&6; }+if test "${ac_cv_lib_ws2_32__head_libws2_32_a+set}" = set; then+  $as_echo_n "(cached) " >&6+else+  ac_check_lib_save_LIBS=$LIBS+LIBS="-lws2_32  $LIBS"+cat >conftest.$ac_ext <<_ACEOF+/* confdefs.h.  */+_ACEOF+cat confdefs.h >>conftest.$ac_ext+cat >>conftest.$ac_ext <<_ACEOF+/* end confdefs.h.  */++/* Override any GCC internal prototype to avoid an error.+   Use char because int might match the return type of a GCC+   builtin and then its argument prototype would still apply.  */+#ifdef __cplusplus+extern "C"+#endif+char _head_libws2_32_a ();+int+main ()+{+return _head_libws2_32_a ();+  ;+  return 0;+}+_ACEOF+rm -f conftest.$ac_objext conftest$ac_exeext+if { (ac_try="$ac_link"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""+$as_echo "$ac_try_echo") >&5+  (eval "$ac_link") 2>conftest.er1+  ac_status=$?+  grep -v '^ *+' conftest.er1 >conftest.err+  rm -f conftest.er1+  cat conftest.err >&5+  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5+  (exit $ac_status); } && {+	 test -z "$ac_c_werror_flag" ||+	 test ! -s conftest.err+       } && test -s conftest$ac_exeext && {+	 test "$cross_compiling" = yes ||+	 $as_test_x conftest$ac_exeext+       }; then+  ac_cv_lib_ws2_32__head_libws2_32_a=yes+else+  $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++	ac_cv_lib_ws2_32__head_libws2_32_a=no+fi++rm -rf conftest.dSYM+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \+      conftest$ac_exeext conftest.$ac_ext+LIBS=$ac_check_lib_save_LIBS+fi+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_ws2_32__head_libws2_32_a" >&5+$as_echo "$ac_cv_lib_ws2_32__head_libws2_32_a" >&6; }+if test $ac_cv_lib_ws2_32__head_libws2_32_a = yes; then+  cat >>confdefs.h <<_ACEOF+#define HAVE_LIBWS2_32 1+_ACEOF++  LIBS="-lws2_32 $LIBS"++fi+++{ $as_echo "$as_me:$LINENO: checking for getaddrinfo" >&5+$as_echo_n "checking for getaddrinfo... " >&6; }+cat >conftest.$ac_ext <<_ACEOF+/* confdefs.h.  */+_ACEOF+cat confdefs.h >>conftest.$ac_ext+cat >>conftest.$ac_ext <<_ACEOF+/* end confdefs.h.  */+$ac_includes_default+int testme(){ getaddrinfo; }+int+main ()+{++  ;+  return 0;+}+_ACEOF+rm -f conftest.$ac_objext+if { (ac_try="$ac_compile"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""+$as_echo "$ac_try_echo") >&5+  (eval "$ac_compile") 2>conftest.er1+  ac_status=$?+  grep -v '^ *+' conftest.er1 >conftest.err+  rm -f conftest.er1+  cat conftest.err >&5+  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5+  (exit $ac_status); } && {+	 test -z "$ac_c_werror_flag" ||+	 test ! -s conftest.err+       } && test -s conftest.$ac_objext; then++cat >>confdefs.h <<\_ACEOF+#define HAVE_GETADDRINFO 1+_ACEOF+ ac_have_getaddrinfo=yes; { $as_echo "$as_me:$LINENO: result: yes" >&5+$as_echo "yes" >&6; }+else+  $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++	{ $as_echo "$as_me:$LINENO: result: no" >&5+$as_echo "no" >&6; }+fi++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext++if test "x$ac_have_getaddrinfo" = x; then+  old_CFLAGS="$CFLAGS"+  if test "z$ac_cv_lib_ws2_32__head_libws2_32_a" = zyes; then+    CFLAGS="-DWINVER=0x0501 $CFLAGS"+    { $as_echo "$as_me:$LINENO: checking for getaddrinfo if WINVER is 0x0501" >&5+$as_echo_n "checking for getaddrinfo if WINVER is 0x0501... " >&6; }+    cat >conftest.$ac_ext <<_ACEOF+/* confdefs.h.  */+_ACEOF+cat confdefs.h >>conftest.$ac_ext+cat >>conftest.$ac_ext <<_ACEOF+/* end confdefs.h.  */+$ac_includes_default+    int testme(){ getaddrinfo; }+int+main ()+{++  ;+  return 0;+}+_ACEOF+rm -f conftest.$ac_objext+if { (ac_try="$ac_compile"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""+$as_echo "$ac_try_echo") >&5+  (eval "$ac_compile") 2>conftest.er1+  ac_status=$?+  grep -v '^ *+' conftest.er1 >conftest.err+  rm -f conftest.er1+  cat conftest.err >&5+  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5+  (exit $ac_status); } && {+	 test -z "$ac_c_werror_flag" ||+	 test ! -s conftest.err+       } && test -s conftest.$ac_objext; then++cat >>confdefs.h <<\_ACEOF+#define HAVE_GETADDRINFO 1+_ACEOF++cat >>confdefs.h <<\_ACEOF+#define NEED_WINVER_XP 1+_ACEOF+ EXTRA_CPPFLAGS="-DWINVER=0x0501 $EXTRA_CPPFLAGS"; { $as_echo "$as_me:$LINENO: result: yes" >&5+$as_echo "yes" >&6; }+else+  $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++	CFLAGS="$old_CFLAGS"; { $as_echo "$as_me:$LINENO: result: no" >&5+$as_echo "no" >&6; }+fi++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+  fi+fi+++for ac_func in gai_strerror do as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5@@ -4614,8 +4820,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h.  */-#include <netdb.h>-+$ac_includes_default int main () {@@ -4682,8 +4887,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h.  */-#include <netdb.h>-+$ac_includes_default int main () {@@ -4750,8 +4954,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h.  */-#include <netdb.h>-+$ac_includes_default int main () {@@ -4818,8 +5021,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h.  */-#include <netdb.h>-+$ac_includes_default int main () {@@ -5034,7 +5236,7 @@ case "$host" in *-mingw32) 	EXTRA_SRCS="cbits/initWinSock.c, cbits/winSockErr.c, cbits/asyncAccept.c"-	EXTRA_LIBS=wsock32+	EXTRA_LIBS=ws2_32 	CALLCONV=stdcall ;; *-solaris2*) 	EXTRA_SRCS="cbits/ancilData.c"
include/HsNetworkConfig.h view
@@ -26,6 +26,9 @@ /* Define to 1 if you have the <fcntl.h> header file. */ #define HAVE_FCNTL_H 1 +/* Define to 1 if you have the `gai_strerror' function. */+#define HAVE_GAI_STRERROR 1+ /* Define to 1 if you have the `getaddrinfo' function. */ #define HAVE_GETADDRINFO 1 @@ -38,6 +41,9 @@ /* Define to 1 if in_addr_t is available. */ #define HAVE_IN_ADDR_T 1 +/* Define to 1 if you have the `ws2_32' library (-lws2_32). */+/* #undef HAVE_LIBWS2_32 */+ /* Define to 1 if you have the <limits.h> header file. */ #define HAVE_LIMITS_H 1 @@ -104,8 +110,17 @@ /* Define to 1 if you have the <unistd.h> header file. */ #define HAVE_UNISTD_H 1 -/* Define to 1 if you have the <winsock.h> header file. */-/* #undef HAVE_WINSOCK_H */+/* Define to 1 if you have the <winsock2.h> header file. */+/* #undef HAVE_WINSOCK2_H */++/* Define to 1 if you have the <ws2tcpip.h> header file. */+/* #undef HAVE_WS2TCPIP_H */++/* Define to 1 if you have the <wspiapi.h> header file. */+/* #undef HAVE_WSPIAPI_H */++/* Define to 1 if the `getaddrinfo' function needs WINVER set. */+/* #undef NEED_WINVER_XP */  /* Define to the address where bug reports for this package should be sent. */ #define PACKAGE_BUGREPORT "libraries@haskell.org"
include/HsNetworkConfig.h.in view
@@ -25,6 +25,9 @@ /* Define to 1 if you have the <fcntl.h> header file. */ #undef HAVE_FCNTL_H +/* Define to 1 if you have the `gai_strerror' function. */+#undef HAVE_GAI_STRERROR+ /* Define to 1 if you have the `getaddrinfo' function. */ #undef HAVE_GETADDRINFO @@ -37,6 +40,9 @@ /* Define to 1 if in_addr_t is available. */ #undef HAVE_IN_ADDR_T +/* Define to 1 if you have the `ws2_32' library (-lws2_32). */+#undef HAVE_LIBWS2_32+ /* Define to 1 if you have the <limits.h> header file. */ #undef HAVE_LIMITS_H @@ -103,8 +109,17 @@ /* Define to 1 if you have the <unistd.h> header file. */ #undef HAVE_UNISTD_H -/* Define to 1 if you have the <winsock.h> header file. */-#undef HAVE_WINSOCK_H+/* Define to 1 if you have the <winsock2.h> header file. */+#undef HAVE_WINSOCK2_H++/* Define to 1 if you have the <ws2tcpip.h> header file. */+#undef HAVE_WS2TCPIP_H++/* Define to 1 if you have the <wspiapi.h> header file. */+#undef HAVE_WSPIAPI_H++/* Define to 1 if the `getaddrinfo' function needs WINVER set. */+#undef NEED_WINVER_XP  /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT
network.cabal view
@@ -1,5 +1,5 @@ name:           network-version:        2.2.1.2+version:        2.2.1.3 license:        BSD3 license-file:   LICENSE maintainer:     Johan Tibell <johan.tibell@gmail.com>