import FuncTorrent.Bencode (decode)
import FuncTorrent.Logger (initLogger, logMessage, logStop)
import FuncTorrent.Metainfo (Info(..), Metainfo(..), mkMetaInfo)
-import FuncTorrent.Peer (handShake)
+import FuncTorrent.Peer (handShake, msgLoop)
import FuncTorrent.Tracker (tracker, peers, mkTrackerResponse)
logError :: ParseError -> (String -> IO ()) -> IO ()
Right peerResp -> do
log $ "Peers List : " ++ (show . peers $ peerResp)
let p1 = head (peers peerResp)
- msg <- handShake p1 (infoHash m) peerId
- log $ "handshake: " ++ (show msg)
- return ()
+ h <- handShake p1 (infoHash m) peerId
+ log $ "handshake"
+ msgLoop h
Left e -> log $ "Error" ++ unpack e
Left e -> logError e log