This commit is contained in:
Evgeny Poberezkin
2022-03-20 18:00:16 +00:00
parent 3066f9b48d
commit bf020f3492
+10 -10
View File
@@ -15,9 +15,9 @@ foreign import capi "netinet/tcp.h value TCP_KEEPINTVL" tcpKeepIntvl :: CInt
foreign import capi "netinet/tcp.h value SOL_TCP" solTcp :: CInt
data KeepAliveOpts = KeepAliveOpts
{ keepCnt :: Int,
keepIdle :: Int,
keepIntvl :: Int
{ keepCnt :: CInt,
keepIdle :: CInt,
keepIntvl :: CInt
}
defaultKeepAlive :: KeepAliveOpts
@@ -31,10 +31,10 @@ defaultKeepAlive =
setSocketKeepAlive :: Socket -> KeepAliveOpts -> IO ()
setSocketKeepAlive sock KeepAliveOpts {keepCnt, keepIdle, keepIntvl} = do
setSocketOption sock KeepAlive 1
putStrLn $ "solTcp: " <> show solTcp
putStrLn $ "tcpKeepCnt: " <> show tcpKeepCnt
putStrLn $ "tcpKeepIdle: " <> show tcpKeepIdle
putStrLn $ "tcpKeepIntvl: " <> show tcpKeepIntvl
setSocketOption sock (SockOpt solTcp tcpKeepCnt) keepCnt
setSocketOption sock (SockOpt solTcp tcpKeepIdle) keepIdle
setSocketOption sock (SockOpt solTcp tcpKeepIntvl) keepIntvl
-- putStrLn $ "solTcp: " <> show solTcp
-- putStrLn $ "tcpKeepCnt: " <> show tcpKeepCnt
-- putStrLn $ "tcpKeepIdle: " <> show tcpKeepIdle
-- putStrLn $ "tcpKeepIntvl: " <> show tcpKeepIntvl
setSockOpt sock (SockOpt solTcp tcpKeepCnt) keepCnt
setSockOpt sock (SockOpt solTcp tcpKeepIdle) keepIdle
setSockOpt sock (SockOpt solTcp tcpKeepIntvl) keepIntvl