-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Bindings to libtelnet -- -- Binds https://github.com/seanmiddleditch/libtelnet , a C -- library for writing telnet clients and servers. See README.md -- or Network.Telnet.LibTelnet to get started. @package libtelnet @version 0.1.0.0 -- | Telnet interpret-as-command (IAC) codes. See RFC 854 for the -- meaning of many of these. module Network.Telnet.LibTelnet.Iac -- | Wrapper for telnet commands and special values. newtype Iac Iac :: CUChar -> Iac [unIac] :: Iac -> CUChar iacNull :: Iac iacIac :: Iac iacDont :: Iac iacDo :: Iac iacWont :: Iac iacWill :: Iac iacSB :: Iac iacGA :: Iac iacEL :: Iac iacEC :: Iac iacAYT :: Iac iacAO :: Iac iacIP :: Iac iacBreak :: Iac iacDM :: Iac iacNOP :: Iac iacSE :: Iac iacEOR :: Iac iacAbort :: Iac iacSusp :: Iac iacEOF :: Iac instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Iac.Iac instance GHC.Show.Show Network.Telnet.LibTelnet.Iac.Iac instance GHC.Classes.Eq Network.Telnet.LibTelnet.Iac.Iac -- | Telnet option codes. Many of these are defined in their own RFC. -- http://www.omnifarious.org/~hopper/technical/telnet-rfc.html is -- a good index of known options. module Network.Telnet.LibTelnet.Options -- | Wrapper for telnet option codes. newtype Option Option :: CUChar -> Option [unOption] :: Option -> CUChar optBinary :: Option optEcho :: Option optRCP :: Option optSGA :: Option optNAMS :: Option optStatus :: Option optTM :: Option optRCTE :: Option optNAOL :: Option optNAOP :: Option optNAOCRD :: Option optNAOHTS :: Option optNAOHTD :: Option optNAOFFD :: Option optNAOVTS :: Option optNAOVTD :: Option optNAOLFD :: Option optXASCII :: Option optLogout :: Option optBM :: Option optDET :: Option optSUPDUP :: Option optSUPDUPOutput :: Option optSNDLOC :: Option optTType :: Option optEOR :: Option optTUID :: Option optOUTMRK :: Option optTTYLOC :: Option opt3270Regime :: Option optX3Pad :: Option optNAWS :: Option optTSpeed :: Option optLFlow :: Option optLineMode :: Option optXDISPLOC :: Option optEnviron :: Option optAuthentication :: Option optEncrypt :: Option optNewEnviron :: Option optMSSP :: Option optCompress2 :: Option optZMP :: Option optEXOPL :: Option optMCCP2 :: Option instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Options.Option instance GHC.Show.Show Network.Telnet.LibTelnet.Options.Option instance GHC.Classes.Eq Network.Telnet.LibTelnet.Options.Option -- | Wrappers for libtelnet types, where the wrapping is simple -- enough to not need its own module. Interpret-as-command codes live in -- Network.Telnet.LibTelnet.Iac, and telnet option codes live in -- Network.Telnet.LibTelnet.Options. module Network.Telnet.LibTelnet.Types -- | Uninhabited type for pointer safety (telnet_t). data TelnetT -- | Exceptions thrown by the binding, for when something has gone -- seriously wrong. Errors detected by libtelnet are not thrown -- but instead are passed to the event handler. data TelnetException NullTelnetPtr :: TelnetException UnexpectedEventType :: TelnetEventTypeT -> TelnetException UnexpectedEnvironCmd :: ECmd -> TelnetException UnexpectedEnvironVar :: EVar -> TelnetException UnexpectedTerminalTypeCmd :: TCmd -> TelnetException -- | Flags for telnet_init. newtype Flag Flag :: CUChar -> Flag [unFlag] :: Flag -> CUChar flagProxy :: Flag -- | Wraps telnet_telopt_t. data TelnetTeloptT TelnetTeloptT :: CShort -> Iac -> Iac -> TelnetTeloptT -- | option value [_telopt] :: TelnetTeloptT -> CShort -- | option supported on server [_us] :: TelnetTeloptT -> Iac -- | allow clients to use the option? [_him] :: TelnetTeloptT -> Iac -- | Wraps telnet_event_t. data EventT -- | eventData Data :: (CString, CSize) -> EventT -- | eventSend Send :: (CString, CSize) -> EventT -- | eventWarning Warning :: ErrorT -> EventT -- | eventError Error :: ErrorT -> EventT -- | eventIac Command :: Iac -> EventT -- | eventWill Will :: Option -> EventT -- | eventWont Wont :: Option -> EventT -- | eventDo Do :: Option -> EventT -- | eventDont Dont :: Option -> EventT -- | eventSubnegotiation Subnegotiation :: Option -> (CString, CSize) -> EventT -- | eventZmp Zmp :: (Ptr CString, CSize) -> EventT -- | eventTType TerminalType :: TCmd -> CString -> EventT -- | eventCompress Compress :: CUChar -> EventT -- | eventEnviron Environ :: ECmd -> (Ptr TelnetEnvironT, CSize) -> EventT -- | eventMssp Mssp :: (Ptr TelnetEnvironT, CSize) -> EventT -- | Constants from telnet_event_type_t. newtype TelnetEventTypeT TelnetEventTypeT :: CInt -> TelnetEventTypeT [unTelnetEventTypeT] :: TelnetEventTypeT -> CInt eventData :: TelnetEventTypeT eventSend :: TelnetEventTypeT eventIac :: TelnetEventTypeT eventWill :: TelnetEventTypeT eventWont :: TelnetEventTypeT eventDo :: TelnetEventTypeT eventDont :: TelnetEventTypeT eventSubnegotiation :: TelnetEventTypeT eventCompress :: TelnetEventTypeT -- | Data in Warning and Error events, modeled after -- struct error_t inside telnet_event_t. eventZmp :: TelnetEventTypeT eventTType :: TelnetEventTypeT data ErrorT ErrorT :: CString -> CString -> CString -> CInt -> TelnetErrorT -> ErrorT [_file] :: ErrorT -> CString [_func] :: ErrorT -> CString [_msg] :: ErrorT -> CString [_line] :: ErrorT -> CInt [_errcode] :: ErrorT -> TelnetErrorT eventEnviron :: TelnetEventTypeT eventMssp :: TelnetEventTypeT eventWarning :: TelnetEventTypeT -- | Constants from telnet_error_t. eventError :: TelnetEventTypeT newtype TelnetErrorT TelnetErrorT :: CInt -> TelnetErrorT [unTelnetErrorT] :: TelnetErrorT -> CInt errOK :: TelnetErrorT errBadVal :: TelnetErrorT errNoMem :: TelnetErrorT errOverflow :: TelnetErrorT errProtocol :: TelnetErrorT -- | Constants for TERMINAL-TYPE commands. errCompress :: TelnetErrorT newtype TCmd TCmd :: CUChar -> TCmd [unTCmd] :: TCmd -> CUChar tCmdIs :: TCmd tCmdSend :: TCmd -- | Constants for ENVIRON/NEW-ENVIRON commands. newtype ECmd ECmd :: CUChar -> ECmd [unECmd] :: ECmd -> CUChar eCmdIs :: ECmd eCmdSend :: ECmd eCmdInfo :: ECmd -- | Constants for ENVIRON/NEW-ENVIRON variables. newtype EVar EVar :: CUChar -> EVar [unEvar] :: EVar -> CUChar eVar :: EVar eValue :: EVar eUserVar :: EVar -- | Constants for MSSP. newtype MsspVar MsspVar :: CUChar -> MsspVar [unMsspVar] :: MsspVar -> CUChar msspVar :: MsspVar msspVal :: MsspVar -- | ENVIRONMENT/NEW-ENVIRONMENT/MSSP messages, -- wrapping telnet_environ_t. data TelnetEnvironT TelnetEnvironT :: EVar -> CString -> CString -> TelnetEnvironT -- |
-- unsigned char type --[_type] :: TelnetEnvironT -> EVar -- |
-- char *var --[_var] :: TelnetEnvironT -> CString -- |
-- char *value --[_value] :: TelnetEnvironT -> CString instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Types.MsspVar instance GHC.Show.Show Network.Telnet.LibTelnet.Types.MsspVar instance GHC.Classes.Eq Network.Telnet.LibTelnet.Types.MsspVar instance GHC.Show.Show Network.Telnet.LibTelnet.Types.TelnetException instance GHC.Generics.Generic Network.Telnet.LibTelnet.Types.TelnetException instance GHC.Classes.Eq Network.Telnet.LibTelnet.Types.TelnetException instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Types.EVar instance GHC.Show.Show Network.Telnet.LibTelnet.Types.EVar instance GHC.Classes.Eq Network.Telnet.LibTelnet.Types.EVar instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Types.ECmd instance GHC.Show.Show Network.Telnet.LibTelnet.Types.ECmd instance GHC.Classes.Eq Network.Telnet.LibTelnet.Types.ECmd instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Types.TCmd instance GHC.Show.Show Network.Telnet.LibTelnet.Types.TCmd instance GHC.Classes.Eq Network.Telnet.LibTelnet.Types.TCmd instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Types.TelnetErrorT instance GHC.Show.Show Network.Telnet.LibTelnet.Types.TelnetErrorT instance GHC.Classes.Eq Network.Telnet.LibTelnet.Types.TelnetErrorT instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Types.TelnetEventTypeT instance GHC.Show.Show Network.Telnet.LibTelnet.Types.TelnetEventTypeT instance GHC.Classes.Eq Network.Telnet.LibTelnet.Types.TelnetEventTypeT instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Types.EventT instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Types.TelnetEnvironT instance GHC.Exception.Type.Exception Network.Telnet.LibTelnet.Types.TelnetException instance Foreign.Storable.Storable Network.Telnet.LibTelnet.Types.TelnetTeloptT -- | FFI binding to libtelnet. The vast majority of these -- functions are generated from foreign import declarations. module Network.Telnet.LibTelnet.Ffi -- | Wrap cTelnetInit. telnetInit :: [TelnetTeloptT] -> TelnetEventHandlerT -> [Flag] -> IO (ForeignPtr TelnetT) -- | C function telnet_init. cTelnetInit :: Ptr TelnetTeloptT -> FunPtr TelnetEventHandlerT -> CUChar -> Ptr () -> IO (Ptr TelnetT) -- | C function telnet_free. cTelnetFree :: Ptr TelnetT -> IO () -- | Represents telnet_event_handler_t. type TelnetEventHandlerT = Ptr TelnetT -> Ptr EventT -> Ptr () -> IO () -- | Wrap an TelnetEventHandlerT to pass to C code. wrapEventHandler :: TelnetEventHandlerT -> IO (FunPtr TelnetEventHandlerT) -- | Wrap cTelnetRecv. telnetRecv :: Ptr TelnetT -> ByteString -> IO () -- | C function telnet_recv. cTelnetRecv :: Ptr TelnetT -> CString -> CSize -> IO () -- | C function telnet_iac. cTelnetIac :: Ptr TelnetT -> Iac -> IO () -- | C function telnet_negotiate. cTelnetNegotiate :: Ptr TelnetT -> Iac -> Option -> IO () -- | Wrap cTelnetSend. telnetSend :: Ptr TelnetT -> ByteString -> IO () -- | C function telnet_send. cTelnetSend :: Ptr TelnetT -> CString -> CSize -> IO () -- | Wrap cTelnetSubnegotiation. telnetSubnegotiation :: Ptr TelnetT -> Option -> ByteString -> IO () -- | C function telnet_subnegotiation. cTelnetSubnegotiation :: Ptr TelnetT -> Option -> CString -> CSize -> IO () -- | C function telnet_begin_compress2. cTelnetBeginCompress2 :: Ptr TelnetT -> IO () -- | C function telnet_begin_newenviron. cTelnetBeginNewEnviron :: Ptr TelnetT -> ECmd -> IO () -- | C function telnet_newenviron_value. cTelnetNewEnvironValue :: Ptr TelnetT -> EVar -> CString -> IO () -- | C function telnet_ttype_send. cTelnetTTypeSend :: Ptr TelnetT -> IO () -- | C function telnet_ttype_is. cTelnetTTypeIs :: Ptr TelnetT -> CString -> IO () -- | Wrap cTelnetSendZmp. telnetSendZmp :: Ptr TelnetT -> [ByteString] -> IO () -- | C function telnet_send_zmp. cTelnetSendZmp :: Ptr TelnetT -> CSize -> Ptr CString -> IO () -- | Collect '[ByteString]' into a temporary array of strings in a 'Ptr -- CString', for passing to C functions. useAsCStrings :: [ByteString] -> (Ptr CString -> IO a) -> IO a -- | Getting Started: -- --