Safe Haskell | None |
---|---|
Language | Haskell98 |
- resolveToSockAddr :: SocksAddress -> IO SockAddr
- socksListen :: Socket -> IO SocksRequest
- data SocksHello = SocksHello {}
- data SocksHelloResponse = SocksHelloResponse {}
- data SocksRequest = SocksRequest {}
- data SocksResponse = SocksResponse {}
- establish :: Socket -> [SocksMethod] -> IO SocksMethod
- newtype Connect = Connect SocksAddress
- class Command a where
- connectIPV4 :: Socket -> HostAddress -> PortNumber -> IO (HostAddress, PortNumber)
- connectIPV6 :: Socket -> HostAddress6 -> PortNumber -> IO (HostAddress6, PortNumber)
- connectDomainName :: Socket -> String -> PortNumber -> IO (SocksHostAddress, PortNumber)
- rpc :: Command a => Socket -> a -> IO (Either SocksError (SocksHostAddress, PortNumber))
- rpc_ :: Command a => Socket -> a -> IO (SocksHostAddress, PortNumber)
- sendSerialized :: Serialize a => Socket -> a -> IO ()
- waitSerialized :: Serialize a => Socket -> IO a
Documentation
socksListen :: Socket -> IO SocksRequest Source #
lowlevel types
data SocksHello Source #
Initial message sent by client with the list of authentification methods supported
data SocksHelloResponse Source #
Initial message send by server in return from Hello, with the server chosen method of authentication
establish :: Socket -> [SocksMethod] -> IO SocksMethod Source #
class Command a where Source #
toRequest :: a -> SocksRequest Source #
fromRequest :: SocksRequest -> Maybe a Source #
connectIPV4 :: Socket -> HostAddress -> PortNumber -> IO (HostAddress, PortNumber) Source #
connectIPV6 :: Socket -> HostAddress6 -> PortNumber -> IO (HostAddress6, PortNumber) Source #
connectDomainName :: Socket -> String -> PortNumber -> IO (SocksHostAddress, PortNumber) Source #
lowlevel interface
rpc :: Command a => Socket -> a -> IO (Either SocksError (SocksHostAddress, PortNumber)) Source #
rpc_ :: Command a => Socket -> a -> IO (SocksHostAddress, PortNumber) Source #