--- a/gameServer/Actions.hs Sat Jan 18 18:20:43 2014 +0100
+++ b/gameServer/Actions.hs Sun Jan 19 00:18:28 2014 +0400
@@ -454,8 +454,14 @@
checkerLogin _ False _ = processAction $ ByeClient $ loc "No checker rights"
checkerLogin p True _ = do
wp <- client's webPassword
- processAction $
- if wp == p then ModifyClient $ \c -> c{logonPassed = True} else ByeClient $ loc "Authentication failed"
+ chan <- client's sendChan
+ mapM_ processAction $
+ if wp == p then
+ [ModifyClient $ \c -> c{logonPassed = True}
+ , AnswerClients [chan] ["LOGONPASSED"]
+ ]
+ else
+ [ByeClient $ loc "Authentication failed"]
playerLogin p a contr = do
chan <- client's sendChan
mapM_ processAction [
--- a/gameServer/OfficialServer/checker.hs Sat Jan 18 18:20:43 2014 +0100
+++ b/gameServer/OfficialServer/checker.hs Sun Jan 19 00:18:28 2014 +0400
@@ -148,8 +148,8 @@
onPacket :: Chan Message -> [B.ByteString] -> IO ()
onPacket _ ("CONNECTED":_) = do
answer ["CHECKER", protocolNumber, l, p]
- answer ["READY"]
onPacket _ ["PING"] = answer ["PONG"]
+ onPacket _ ["LOGONPASSED"] = answer ["READY"]
onPacket chan ("REPLAY":msgs) = do
checkReplay chan msgs
warningM "Check" "Started check"