summaryrefslogtreecommitdiff
path: root/src/Network/BitTorrent/DHT/Session.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Network/BitTorrent/DHT/Session.hs')
-rw-r--r--src/Network/BitTorrent/DHT/Session.hs13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/Network/BitTorrent/DHT/Session.hs b/src/Network/BitTorrent/DHT/Session.hs
index e770b1d3..208f8ec8 100644
--- a/src/Network/BitTorrent/DHT/Session.hs
+++ b/src/Network/BitTorrent/DHT/Session.hs
@@ -75,6 +75,7 @@ import Control.Monad.Logger
75import Control.Monad.Reader 75import Control.Monad.Reader
76import Control.Monad.Trans.Control 76import Control.Monad.Trans.Control
77import Control.Monad.Trans.Resource 77import Control.Monad.Trans.Resource
78import Data.Conduit.Lazy
78import Data.Default 79import Data.Default
79import Data.Fixed 80import Data.Fixed
80import Data.Hashable 81import Data.Hashable
@@ -91,11 +92,11 @@ import System.Random (randomIO)
91import Text.PrettyPrint as PP hiding ((<>), ($$)) 92import Text.PrettyPrint as PP hiding ((<>), ($$))
92import Text.PrettyPrint.Class 93import Text.PrettyPrint.Class
93 94
94import Data.Torrent.InfoHash 95import Data.Torrent as Torrent
95import Network.KRPC hiding (Options, def) 96import Network.KRPC hiding (Options, def)
96import qualified Network.KRPC as KRPC (def) 97import qualified Network.KRPC as KRPC (def)
97import Network.BitTorrent.Core 98import Network.BitTorrent.Address
98import Network.BitTorrent.Core.PeerAddr as P 99import Network.BitTorrent.DHT.ContactInfo as P
99import Network.BitTorrent.DHT.Message 100import Network.BitTorrent.DHT.Message
100import Network.BitTorrent.DHT.Routing as R 101import Network.BitTorrent.DHT.Routing as R
101import Network.BitTorrent.DHT.Token as T 102import Network.BitTorrent.DHT.Token as T
@@ -253,10 +254,8 @@ data Node ip = Node
253-- | DHT keep track current session and proper resource allocation for 254-- | DHT keep track current session and proper resource allocation for
254-- safe multithreading. 255-- safe multithreading.
255newtype DHT ip a = DHT { unDHT :: ReaderT (Node ip) IO a } 256newtype DHT ip a = DHT { unDHT :: ReaderT (Node ip) IO a }
256 deriving ( Functor, Applicative, Monad 257 deriving ( Functor, Applicative, Monad, MonadIO
257 , MonadIO, MonadBase IO 258 , MonadBase IO, MonadReader (Node ip), MonadThrow
258 , MonadReader (Node ip)
259 , MonadThrow, MonadUnsafeIO
260 ) 259 )
261 260
262instance MonadBaseControl IO (DHT ip) where 261instance MonadBaseControl IO (DHT ip) where