2 Commits
Author SHA1 Message Date
christian 3306e349d3 upgrade lts 2021-11-28 17:26:58 +01:00
christian c6f43b2c96 replace deprecated iNADDR_ANY 2021-11-28 17:20:21 +01:00
2 changed files with 7 additions and 2 deletions
+6 -1
View File
@@ -48,13 +48,18 @@ initServer :: Net.PortNumber -> Buffering -> OnReceive -> IO ServerEnv
initServer port buffermode handler = do
sock <- Net.socket Net.AF_INET Net.Stream 0
Net.setSocketOption sock Net.ReuseAddr 1
Net.bind sock (Net.SockAddrInet port Net.iNADDR_ANY)
addr <- Net.addrAddress <$> resolve
Net.bind sock addr
Net.listen sock 5
chan <- newChan
forkIO $ forever $ do
msg <- readChan chan -- clearing the main channel
return ()
return (ServerEnv buffermode sock chan handler)
where resolve = do
let hints = Net.defaultHints { Net.addrSocketType = Net.Stream }
addrs <- Net.getAddrInfo (Just hints) (Just "127.0.0.1") (Just $ show port)
return $ head addrs
close :: ServerEnv -> IO ()
close = Net.close . socket
+1 -1
View File
@@ -17,7 +17,7 @@
#
# resolver: ./custom-snapshot.yaml
# resolver: https://example.com/snapshots/2018-01-01.yaml
resolver: lts-14.3
resolver: lts-18.18
# User packages to be built.
# Various formats can be used as shown in the example below.