Compare commits
3 Commits
a69a9385b6
...
77cfcce5df
Author | SHA1 | Date | |
---|---|---|---|
Jonathan Lamothe | 77cfcce5df | ||
Jonathan Lamothe | 115dcf3998 | ||
Jonathan Lamothe | 554efdabcb |
|
@ -1,3 +1,6 @@
|
|||
# Changelog for gemcap
|
||||
|
||||
## Unreleased changes
|
||||
## 0.1.0.1
|
||||
|
||||
- updated underlying libraries to more current versions
|
||||
- fixed a bug that would cause the server to crash when the client aborted the handshake by rejecting the key
|
||||
|
|
|
@ -5,7 +5,7 @@ cabal-version: 2.2
|
|||
-- see: https://github.com/sol/hpack
|
||||
|
||||
name: gemcap
|
||||
version: 0.1.0
|
||||
version: 0.1.0.1
|
||||
synopsis: a simple Gemini capsule (server)
|
||||
description: a simple Gemini capsule (server) - see README.md for details
|
||||
category: Gemini
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
name: gemcap
|
||||
version: 0.1.0
|
||||
version: 0.1.0.1
|
||||
license: AGPL-3.0-or-later
|
||||
author: "Jonathan Lamothe"
|
||||
maintainer: "jonathan@jlamothe.net"
|
||||
|
|
|
@ -31,7 +31,7 @@ module Network.Gemini.Capsule (
|
|||
) where
|
||||
|
||||
import Control.Concurrent (forkIO)
|
||||
import Control.Exception (IOException, try)
|
||||
import Control.Exception (SomeException, try)
|
||||
import Control.Exception.Base (bracket, finally)
|
||||
import Control.Monad (void)
|
||||
import qualified Data.Connection as C
|
||||
|
@ -72,7 +72,7 @@ listenLoop sock params handler = do
|
|||
certRef <- newIORef Nothing
|
||||
let params' = adjustServerParams certRef params
|
||||
try (accept params' sock) >>= \case
|
||||
Left (_::IOException) -> return ()
|
||||
Left (_::SomeException) -> return ()
|
||||
Right conn -> void $ forkIO $ finally
|
||||
(readIORef certRef >>= runConnection conn handler)
|
||||
(C.close conn)
|
||||
|
|
Loading…
Reference in New Issue
Block a user