warp-tls 3.4.10 → 3.4.11
raw patch · 3 files changed
+23/−26 lines, 3 filesdep −unliftio
Dependencies removed: unliftio
Files
- ChangeLog.md +4/−0
- Network/Wai/Handler/WarpTLS.hs +18/−24
- warp-tls.cabal +1/−2
ChangeLog.md view
@@ -1,5 +1,9 @@ # ChangeLog +## 3.4.11++* Removing `unliftio`.+ ## 3.4.10 * Removed `data-default` dependency entirely. Does now require `>= tls-2.1.3`.
Network/Wai/Handler/WarpTLS.hs view
@@ -56,6 +56,19 @@ ) where import Control.Applicative ((<|>))+import Control.Exception (+ Exception,+ IOException,+ SomeException (..),+ bracket,+ finally,+ fromException,+ handle,+ handleJust,+ onException,+ throwIO,+ try,+ ) import Control.Monad (guard, void) import qualified Data.ByteString as S import qualified Data.ByteString.Lazy as L@@ -73,6 +86,7 @@ #endif withSocketsDo, )+import qualified Control.Exception as E import Network.Socket.BufferPool import Network.Socket.ByteString (sendAll) import qualified Network.TLS as TLS@@ -82,23 +96,7 @@ import Network.Wai.Handler.Warp.Internal import Network.Wai.Handler.WarpTLS.Internal import System.IO.Error (ioeGetErrorType, isEOFError)-import UnliftIO.Exception (- Exception,- IOException,- SomeException (..),- bracket,- finally,- fromException,- handle,- handleAny,- handleJust,- onException,- throwIO,- try,- )-import qualified UnliftIO.Exception as E-import UnliftIO.Concurrent (newEmptyMVar, putMVar, takeMVar, forkIOWithUnmask)-import UnliftIO.Timeout (timeout)+import System.Timeout (timeout) ---------------------------------------------------------------- @@ -323,12 +321,8 @@ -> params -> IO (Connection, Transport) mkConn tlsset set s params = do- var <- newEmptyMVar- _ <- forkIOWithUnmask $ \umask -> do- let tm = settingsTimeout set * 1000000- mct <- umask (timeout tm recvFirstBS)- putMVar var mct- mbs <- takeMVar var+ let tm = settingsTimeout set * 1000000+ mbs <- timeout tm recvFirstBS case mbs of Nothing -> throwIO IncompleteHeaders Just bs -> switch bs@@ -366,7 +360,7 @@ case mconn of Nothing -> throwIO IncompleteHeaders Just conn -> return conn- wrappedRecvN recvN n = handleAny (const mempty) $ recvN n+ wrappedRecvN recvN n = handle (\(SomeException _) -> mempty) $ recvN n backend recvN = TLS.Backend { TLS.backendFlush = return ()
warp-tls.cabal view
@@ -1,5 +1,5 @@ Name: warp-tls-Version: 3.4.10+Version: 3.4.11 Synopsis: HTTP over TLS support for Warp via the TLS package License: MIT License-file: LICENSE@@ -26,7 +26,6 @@ , network >= 2.2.1 , streaming-commons , tls-session-manager >= 0.0.4- , unliftio , recv >= 0.1.0 && < 0.2.0 Exposed-modules: Network.Wai.Handler.WarpTLS Network.Wai.Handler.WarpTLS.Internal