Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- socksListen :: Socket -> IO SocksRequest
- data SocksHello = SocksHello {}
- data SocksHelloResponse = SocksHelloResponse {}
- data SocksRequest = SocksRequest {}
- data SocksResponse = SocksResponse {}
- establish :: SocksVersion -> Socket -> [SocksMethod] -> IO SocksMethod
- newtype Connect = Connect SocksAddress
- class Command a where
- toRequest :: a -> SocksRequest
- fromRequest :: SocksRequest -> Maybe a
- connectIPV4 :: Socket -> HostAddress -> PortNumber -> IO (HostAddress, PortNumber)
- connectIPV6 :: Socket -> HostAddress6 -> PortNumber -> IO (HostAddress6, PortNumber)
- connectDomainName :: Socket -> [Char] -> 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
Instances
Eq SocksHello Source # | |
Defined in Network.Socks5.Wire (==) :: SocksHello -> SocksHello -> Bool # (/=) :: SocksHello -> SocksHello -> Bool # | |
Show SocksHello Source # | |
Defined in Network.Socks5.Wire showsPrec :: Int -> SocksHello -> ShowS # show :: SocksHello -> String # showList :: [SocksHello] -> ShowS # | |
Serialize SocksHello Source # | |
Defined in Network.Socks5.Wire put :: Putter SocksHello # get :: Get SocksHello # |
data SocksHelloResponse Source #
Initial message send by server in return from Hello, with the server chosen method of authentication
Instances
Eq SocksHelloResponse Source # | |
Defined in Network.Socks5.Wire (==) :: SocksHelloResponse -> SocksHelloResponse -> Bool # (/=) :: SocksHelloResponse -> SocksHelloResponse -> Bool # | |
Show SocksHelloResponse Source # | |
Defined in Network.Socks5.Wire showsPrec :: Int -> SocksHelloResponse -> ShowS # show :: SocksHelloResponse -> String # showList :: [SocksHelloResponse] -> ShowS # | |
Serialize SocksHelloResponse Source # | |
Defined in Network.Socks5.Wire |
data SocksRequest Source #
Define a SOCKS requests
Instances
Eq SocksRequest Source # | |
Defined in Network.Socks5.Wire (==) :: SocksRequest -> SocksRequest -> Bool # (/=) :: SocksRequest -> SocksRequest -> Bool # | |
Show SocksRequest Source # | |
Defined in Network.Socks5.Wire showsPrec :: Int -> SocksRequest -> ShowS # show :: SocksRequest -> String # showList :: [SocksRequest] -> ShowS # | |
Serialize SocksRequest Source # | |
Defined in Network.Socks5.Wire put :: Putter SocksRequest # get :: Get SocksRequest # | |
Command SocksRequest Source # | |
Defined in Network.Socks5.Command |
data SocksResponse Source #
Define a SOCKS response
Instances
Eq SocksResponse Source # | |
Defined in Network.Socks5.Wire (==) :: SocksResponse -> SocksResponse -> Bool # (/=) :: SocksResponse -> SocksResponse -> Bool # | |
Show SocksResponse Source # | |
Defined in Network.Socks5.Wire showsPrec :: Int -> SocksResponse -> ShowS # show :: SocksResponse -> String # showList :: [SocksResponse] -> ShowS # | |
Serialize SocksResponse Source # | |
Defined in Network.Socks5.Wire put :: Putter SocksResponse # get :: Get SocksResponse # |
establish :: SocksVersion -> Socket -> [SocksMethod] -> IO SocksMethod Source #
class Command a where Source #
toRequest :: a -> SocksRequest Source #
fromRequest :: SocksRequest -> Maybe a Source #
Instances
Command SocksRequest Source # | |
Defined in Network.Socks5.Command | |
Command Connect Source # | |
Defined in Network.Socks5.Command toRequest :: Connect -> SocksRequest Source # fromRequest :: SocksRequest -> Maybe Connect Source # |
connectIPV4 :: Socket -> HostAddress -> PortNumber -> IO (HostAddress, PortNumber) Source #
connectIPV6 :: Socket -> HostAddress6 -> PortNumber -> IO (HostAddress6, PortNumber) Source #
connectDomainName :: Socket -> [Char] -> 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 #