# HG changeset patch # User unc0rr # Date 1238075642 0 # Node ID c94045b701424f2a03c410aa21bfa68487fa5dd5 # Parent 9c3d0e3df6bb56ad2b4ebce111e74ad2e7d2b509 - Better ip2string implementation - Update girder thing sprite diff -r 9c3d0e3df6bb -r c94045b70142 gameServer/NetRoutines.hs --- a/gameServer/NetRoutines.hs Mon Mar 23 21:09:34 2009 +0000 +++ b/gameServer/NetRoutines.hs Thu Mar 26 13:54:02 2009 +0000 @@ -12,10 +12,7 @@ ----------------------------- import CoreTypes import ClientIO - -sockAddr2String :: SockAddr -> IO String -sockAddr2String (SockAddrInet _ hostAddr) = inet_ntoa hostAddr -sockAddr2String (SockAddrInet6 _ _ (a, b, c, d) _) = return (foldr1 (\a b -> a ++ ":" ++ b) [show a, show b, show c, show d]) +import Utils acceptLoop :: Socket -> Chan CoreMessage -> Int -> IO () acceptLoop servSock coreChan clientCounter = do diff -r 9c3d0e3df6bb -r c94045b70142 gameServer/Utils.hs --- a/gameServer/Utils.hs Mon Mar 23 21:09:34 2009 +0000 +++ b/gameServer/Utils.hs Thu Mar 26 13:54:02 2009 +0000 @@ -6,11 +6,22 @@ import Data.Word import qualified Data.Map as Map import qualified Data.IntMap as IntMap +import Numeric +import Network.Socket +import qualified Data.List as List ------------------------------------------------- import qualified Codec.Binary.Base64 as Base64 import qualified Codec.Binary.UTF8.String as UTF8 import CoreTypes + +sockAddr2String :: SockAddr -> IO String +sockAddr2String (SockAddrInet _ hostAddr) = inet_ntoa hostAddr +sockAddr2String (SockAddrInet6 _ _ (a, b, c, d) _) = + return $ (foldr1 (.) + $ List.intersperse (\a -> ':':a) + $ concatMap (\n -> (\(a, b) -> [showHex a, showHex b]) $ divMod n 65536) [a, b, c, d]) [] + toEngineMsg :: String -> String toEngineMsg msg = Base64.encode (fromIntegral (length msg) : (UTF8.encode msg)) diff -r 9c3d0e3df6bb -r c94045b70142 share/hedgewars/Data/Graphics/Hedgehog/amGirder.png Binary file share/hedgewars/Data/Graphics/Hedgehog/amGirder.png has changed