# HG changeset patch # User unc0rr # Date 1296068787 -10800 # Node ID 39d07170085bd52659e7f6651b76bea67b4be533 # Parent c91364bf6a69ea9422354e5256c8c53b1bbbcb1d Apply rev b9fe93f187c4 to server rewrite too diff -r c91364bf6a69 -r 39d07170085b gameServer/hedgewars-server.hs --- a/gameServer/hedgewars-server.hs Wed Jan 26 22:04:18 2011 +0300 +++ b/gameServer/hedgewars-server.hs Wed Jan 26 22:06:27 2011 +0300 @@ -2,7 +2,8 @@ module Main where -import Network +import Network.Socket +import Network.BSD import Control.Concurrent.STM import Control.Concurrent.Chan import qualified Control.Exception as Exception @@ -46,7 +47,14 @@ let serverInfo = serverInfo' #endif + + proto <- getProtocolNumber "tcp" Exception.bracket - (Network.listenOn $ Network.PortNumber $ listenPort serverInfo) + (socket AF_INET Stream proto) sClose - (startServer serverInfo) + (\sock -> do + setSocketOption sock ReuseAddr 1 + bindSocket sock (SockAddrInet (listenPort serverInfo) iNADDR_ANY) + listen sock maxListenQueue + startServer serverInfo sock + )