Hello community,

here is the log from the commit of package ghc-network for openSUSE:Factory 
checked in at 2015-06-02 10:05:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-network (Old)
 and      /work/SRC/openSUSE:Factory/.ghc-network.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ghc-network"

Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-network/ghc-network.changes  2015-05-21 
08:14:35.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-network.new/ghc-network.changes     
2015-06-02 10:05:46.000000000 +0200
@@ -1,0 +2,6 @@
+Sun May 31 20:06:52 UTC 2015 - [email protected]
+
+- update to 2.6.2.0
+* no upstream changelog
+
+-------------------------------------------------------------------

Old:
----
  network-2.6.1.0.tar.gz

New:
----
  network-2.6.2.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ghc-network.spec ++++++
--- /var/tmp/diff_new_pack.bsxmad/_old  2015-06-02 10:05:47.000000000 +0200
+++ /var/tmp/diff_new_pack.bsxmad/_new  2015-06-02 10:05:47.000000000 +0200
@@ -21,7 +21,7 @@
 %bcond_with tests
 
 Name:           ghc-network
-Version:        2.6.1.0
+Version:        2.6.2.0
 Release:        0
 Summary:        Low-level networking interface
 License:        BSD-3-Clause

++++++ network-2.6.1.0.tar.gz -> network-2.6.2.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/network-2.6.1.0/Network/Socket/Types.hsc 
new/network-2.6.2.0/Network/Socket/Types.hsc
--- old/network-2.6.1.0/Network/Socket/Types.hsc        2015-05-07 
09:20:56.000000000 +0200
+++ new/network-2.6.2.0/Network/Socket/Types.hsc        2015-05-29 
13:13:34.000000000 +0200
@@ -32,6 +32,7 @@
 
     -- * Socket addresses
     , SockAddr(..)
+    , isSupportedSockAddr
     , HostAddress
 #if defined(IPV6_SOCKET_SUPPORT)
     , HostAddress6
@@ -801,28 +802,40 @@
 type ScopeID = Word32
 #endif
 
+-- | The existence of a constructor does not necessarily imply that
+-- that socket address type is supported on your system: see
+-- 'isSupportedSockAddr'.
 data SockAddr       -- C Names
   = SockAddrInet
     PortNumber  -- sin_port  (network byte order)
     HostAddress -- sin_addr  (ditto)
-#if defined(IPV6_SOCKET_SUPPORT)
   | SockAddrInet6
         PortNumber      -- sin6_port (network byte order)
         FlowInfo        -- sin6_flowinfo (ditto)
         HostAddress6    -- sin6_addr (ditto)
         ScopeID         -- sin6_scope_id (ditto)
-#endif
-#if defined(DOMAIN_SOCKET_SUPPORT)
   | SockAddrUnix
         String          -- sun_path
-#endif
-#if defined(AF_CAN)
   | SockAddrCan
         Int32           -- can_ifindex (can be get by 
Network.BSD.ifNameToIndex "can0")
         -- TODO: Extend this to include transport protocol information
-#endif
   deriving (Eq, Ord, Typeable)
 
+-- | Is the socket address type supported on this system?
+isSupportedSockAddr :: SockAddr -> Bool
+isSupportedSockAddr addr = case addr of
+  SockAddrInet {} -> True
+#if defined(IPV6_SOCKET_SUPPORT)
+  SockAddrInet6 {} -> True
+#endif
+#if defined(DOMAIN_SOCKET_SUPPORT)
+  SockAddrUnix{} -> True
+#endif
+#if defined(AF_CAN)
+  SockAddrCan{} -> True
+#endif
+  _ -> False
+
 #if defined(WITH_WINSOCK) || defined(cygwin32_HOST_OS)
 type CSaFamily = (#type unsigned short)
 #elif defined(darwin_HOST_OS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/network-2.6.1.0/Network/Socket.hsc 
new/network-2.6.2.0/Network/Socket.hsc
--- old/network-2.6.1.0/Network/Socket.hsc      2015-05-07 09:20:56.000000000 
+0200
+++ new/network-2.6.2.0/Network/Socket.hsc      2015-05-29 13:13:34.000000000 
+0200
@@ -33,6 +33,7 @@
     , SocketType(..)
     , isSupportedSocketType
     , SockAddr(..)
+    , isSupportedSockAddr
     , SocketStatus(..)
     , HostAddress
 #if defined(IPV6_SOCKET_SUPPORT)
@@ -792,6 +793,7 @@
     | RecvTimeOut   -- ^ SO_RCVTIMEO
     | SendTimeOut   -- ^ SO_SNDTIMEO
     | UseLoopBack   -- ^ SO_USELOOPBACK
+    | UserTimeout   -- ^ TCP_USER_TIMEOUT
     | IPv6Only      -- ^ IPV6_V6ONLY
     | CustomSockOpt (CInt, CInt)
     deriving (Show, Typeable)
@@ -881,6 +883,9 @@
 #ifdef TCP_NODELAY
     Just NoDelay       -> Just ((#const IPPROTO_TCP), (#const TCP_NODELAY))
 #endif
+#ifdef TCP_USER_TIMEOUT
+    Just UserTimeout   -> Just ((#const IPPROTO_TCP), (#const 
TCP_USER_TIMEOUT))
+#endif
 #ifdef TCP_CORK
     Just Cork          -> Just ((#const IPPROTO_TCP), (#const TCP_CORK))
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/network-2.6.1.0/configure.ac 
new/network-2.6.2.0/configure.ac
--- old/network-2.6.1.0/configure.ac    2015-05-07 09:20:56.000000000 +0200
+++ new/network-2.6.2.0/configure.ac    2015-05-29 13:13:34.000000000 +0200
@@ -35,7 +35,7 @@
 
 dnl ** check for specific header (.h) files that we are interested in
 AC_CHECK_HEADERS([fcntl.h limits.h stdlib.h sys/types.h unistd.h winsock2.h 
ws2tcpip.h])
-AC_CHECK_HEADERS([arpa/inet.h netdb.h netinet/in.h netinet/tcp.h sys/socket.h 
sys/uio.h sys/un.h linux/can.h])
+AC_CHECK_HEADERS([arpa/inet.h netdb.h netinet/in.h netinet/tcp.h sys/socket.h 
sys/uio.h sys/un.h linux/can.h linux/tcp.h])
 AC_CHECK_HEADERS([net/if.h])
 
 AC_CHECK_FUNCS([readlink symlink if_nametoindex])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/network-2.6.1.0/include/HsNet.h 
new/network-2.6.2.0/include/HsNet.h
--- old/network-2.6.1.0/include/HsNet.h 2015-05-07 09:20:56.000000000 +0200
+++ new/network-2.6.2.0/include/HsNet.h 2015-05-29 13:13:34.000000000 +0200
@@ -75,7 +75,9 @@
 #ifdef HAVE_SYS_SOCKET_H
 # include <sys/socket.h>
 #endif
-#ifdef HAVE_NETINET_TCP_H
+#ifdef HAVE_LINUX_TCP_H
+# include <linux/tcp.h>
+#elif HAVE_NETINET_TCP_H
 # include <netinet/tcp.h>
 #endif
 #ifdef HAVE_NETINET_IN_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/network-2.6.1.0/network.cabal 
new/network-2.6.2.0/network.cabal
--- old/network-2.6.1.0/network.cabal   2015-05-07 09:20:56.000000000 +0200
+++ new/network-2.6.2.0/network.cabal   2015-05-29 13:13:34.000000000 +0200
@@ -1,5 +1,5 @@
 name:           network
-version:        2.6.1.0
+version:        2.6.2.0
 license:        BSD3
 license-file:   LICENSE
 maintainer:     Johan Tibell <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/network-2.6.1.0/tests/Simple.hs 
new/network-2.6.2.0/tests/Simple.hs
--- old/network-2.6.1.0/tests/Simple.hs 2015-05-07 09:20:56.000000000 +0200
+++ new/network-2.6.2.0/tests/Simple.hs 2015-05-29 13:13:34.000000000 +0200
@@ -5,7 +5,7 @@
 import Control.Concurrent (ThreadId, forkIO, myThreadId)
 import Control.Concurrent.MVar (newEmptyMVar, putMVar, takeMVar, readMVar)
 import qualified Control.Exception as E
-import Control.Monad (liftM)
+import Control.Monad (liftM, when)
 import qualified Data.ByteString as S
 import qualified Data.ByteString.Char8 as C
 import Data.Maybe (fromJust)
@@ -129,6 +129,16 @@
 
     client sock = send sock testMsg
 
+testUserTimeout :: Assertion
+testUserTimeout = do
+    when (isSupportedSocketOption UserTimeout) $ do
+      sock <- socket AF_INET Stream defaultProtocol
+      setSocketOption sock UserTimeout 1000
+      getSocketOption sock UserTimeout >>= (@=?) 1000
+      setSocketOption sock UserTimeout 2000
+      getSocketOption sock UserTimeout >>= (@=?) 2000
+      sClose sock
+
 {-
 testGetPeerCred:: Assertion
 testGetPeerCred =
@@ -237,6 +247,7 @@
     , testCase "testOverFlowRecv" testOverFlowRecv
     , testCase "testRecvFrom" testRecvFrom
     , testCase "testOverFlowRecvFrom" testOverFlowRecvFrom
+    , testCase "testUserTimeout" testUserTimeout
 --    , testCase "testGetPeerCred" testGetPeerCred
 --    , testCase "testGetPeerEid" testGetPeerEid
 #if defined(HAVE_LINUX_CAN_H)


Reply via email to