haskell-tor-0.1.1: A Haskell Tor Node

Safe HaskellNone
LanguageHaskell2010

Tor.State.Directories

Description

Routines for tracking Tor directory servicers.

Synopsis

Documentation

data DirectoryDB Source

The current directory database available to the node.

newDirectoryDatabase :: TorNetworkStack ls s -> (String -> IO ()) -> IO DirectoryDB Source

Generate a directory of available databases from which we can pull router lists and publish our own router information, as necessary.

sendRouterDescription :: TorNetworkStack ls s -> (String -> IO ()) -> DirectoryDB -> RouterDesc -> PrivateKey -> IO () Source

Send our router description to all of the directories we know about.

getRandomDirectory :: DRG g => g -> DirectoryDB -> IO (Directory, g) Source

Select a random directory.

findDirectory :: ByteString -> DirectoryDB -> IO (Maybe Directory) Source

Find a directory that matches the given fingerprint.

addDirectory :: TorNetworkStack ls s -> (String -> IO ()) -> DirectoryDB -> Authority -> IO () Source

Add a new directory to our set of known directories.