packages feed

hsyslog-tcp 0.2.0.0 → 0.2.1.0

raw patch · 2 files changed

+18/−15 lines, 2 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

hsyslog-tcp.cabal view
@@ -1,5 +1,5 @@ name:                hsyslog-tcp-version:             0.2.0.0+version:             0.2.1.0 synopsis:            syslog over TCP description: homepage:            https://github.com/osa1/hsyslog-tcp#readme
src/System/Posix/Syslog/TCP.hs view
@@ -56,6 +56,7 @@   ) where  --------------------------------------------------------------------------------+import Control.Exception (onException, mask) import qualified Data.ByteString as BS import qualified Data.ByteString.Char8 as BS8 import Data.Monoid@@ -92,22 +93,24 @@ initSyslog :: SyslogConfig -> IO SyslogConn initSyslog config = do     let addr = _address config-    socket <- N.socket (N.addrFamily addr) (N.addrSocketType addr) (N.addrProtocol addr)-    N.connect socket (N.addrAddress addr)-    let-      send_fn fac sev msg =-        case maskedPriVal (_severityMask config) fac sev of-          Nothing -> return ()-          Just priVal -> do-            time <- getCurrentTime-            let bs = getProtocol (_protocol config)-                     priVal time (_hostName config) (_appName config)-                     (_processId config) msg-            N.sendAll socket bs+    mask $ \restore -> do+      socket <- N.socket (N.addrFamily addr) (N.addrSocketType addr) (N.addrProtocol addr)+      restore (N.connect socket (N.addrAddress addr)) `onException` N.close socket -      close_fn = N.close socket+      let+        send_fn fac sev msg =+          case maskedPriVal (_severityMask config) fac sev of+            Nothing -> return ()+            Just priVal -> do+              time <- getCurrentTime+              let bs = getProtocol (_protocol config)+                       priVal time (_hostName config) (_appName config)+                       (_processId config) msg+              N.sendAll socket bs -    return (SyslogConn send_fn close_fn)+        close_fn = N.close socket++      return (SyslogConn send_fn close_fn)  -- | Configuration options for connecting and logging to your syslog socket. data SyslogConfig = SyslogConfig