AbstractTerminal interface implementation based on telnet. More...
#include <senf/Utils/Termlib/TelnetTerminal.hh>

Public Member Functions | |
| TelnetTerminal () | |
Public Member Functions inherited from senf::term::telnethandler::TerminalType | |
| void | nextTerminalType () |
| Request another terminal type. More... | |
| std::string const & | terminalType () const |
| Return current terminal type. More... | |
Public Member Functions inherited from senf::term::BaseTelnetProtocol::TelnetHandler | |
| virtual | ~TelnetHandler () |
Public Member Functions inherited from senf::term::BaseTelnetProtocol | |
| void | write (std::string const &s) |
| Send string to peer. More... | |
| void | write (char c) |
| Send single character to peer. More... | |
| Handle | handle () |
| Get socket handle. More... | |
| void | sendNOP () |
| Send NOP to peer. More... | |
| void | sendBRK () |
| Send BReaK to peer. More... | |
| void | sendIP () |
| Send InterruptProcess to peer. More... | |
| void | sendAO () |
| Send AbortOutput to peer. More... | |
| void | sendAYT () |
| Send AreYouThere to peer. More... | |
| void | sendEC () |
| Send EraseCharacter to peer. More... | |
| void | sendEL () |
| Send EraseLine to peer. More... | |
| void | sendGA () |
| Send GoAhead to peer. More... | |
| void | sendOptionParameters (option_type option, std::string const &data) |
| Send extended option parameter to peer. More... | |
| void | requestLocalOption (option_type option, bool enabled=true) |
| Request option to be enabled here. More... | |
| void | acceptLocalOption (option_type option, bool enabled=true) |
| Accept a request for an option to be enabled here. More... | |
| void | requestPeerOption (option_type option, bool enabled=true) |
| Request peer to enable an option. More... | |
| void | acceptPeerOption (option_type option, bool enabled=true) |
| Accept a request by the peer to enable an option. More... | |
| bool | localOption (option_type option) |
true, if option locally enabled More... | |
| bool | peerOption (option_type option) |
true, if option enabled in peer More... | |
Public Member Functions inherited from senf::term::telnethandler::NAWS | |
| unsigned | width () const |
| Get current client window width. More... | |
| unsigned | height () const |
| Get current client window height. More... | |
Public Member Functions inherited from senf::term::AbstractTerminal | |
| virtual | ~AbstractTerminal () |
Protected Member Functions | |
| virtual void | v_setupFailed ()=0 |
| Called when the telnet setup has failed. More... | |
Protected Member Functions inherited from senf::term::telnethandler::TerminalType | |
| TerminalType () | |
Protected Member Functions inherited from senf::term::BaseTelnetProtocol | |
| BaseTelnetProtocol (Handle handle) | |
| Construct telnet protocol handler. More... | |
| BaseTelnetProtocol () | |
| Provided for TelnetHandler mixins only. More... | |
| virtual | ~BaseTelnetProtocol () |
| template<class Handler > | |
| void | registerHandler (Handler *h, bool request=true) |
| Register a TelnetHandler. More... | |
| void | incrementRequestCounter () |
| Increment request counter. More... | |
| void | decrementRequestCounter () |
| Decrement request counter. More... | |
| bool | requestsPending () |
true, if there are pending requests More... | |
| virtual void | v_eof ()=0 |
| Called on input EOF. More... | |
| virtual void | v_handleNOP () |
| Called, when the peer sends a NOP. More... | |
| virtual void | v_handleBRK () |
| Called, when the peer sends a BReaK. More... | |
| virtual void | v_handleIP () |
| Called, when the peer sends an InterruptProcess. More... | |
| virtual void | v_handleAO () |
| Called, when the peer sends an AbortOutput. More... | |
| virtual void | v_handleAYT () |
| Called, when the peer sends an AreYouThere. More... | |
| virtual void | v_handleEC () |
| Called, when the peer sends an EraseCharacter. More... | |
| virtual void | v_handleEL () |
| Called, when the peer sends an EraseLine. More... | |
| virtual void | v_handleGA () |
| Called, when the peer sends a GoAhead. More... | |
Protected Member Functions inherited from senf::term::telnethandler::NAWS | |
| NAWS () | |
AbstractTerminal interface implementation | |
| virtual void | setCallbacks (AbstractTerminal::Callbacks &cb) |
| Register terminal callbacks. More... | |
| virtual std::string | terminalType () |
| Get the terminal type. More... | |
| virtual unsigned | width () const |
| Get current terminal window width. More... | |
| virtual unsigned | height () const |
| Get current terminal window height. More... | |
| virtual void | write (char ch) |
| Write character to terminal. More... | |
Additional Inherited Members | |
Public Types inherited from senf::term::BaseTelnetProtocol | |
| typedef ClientSocketHandle< senf::MakeSocketPolicy< ConnectedCommunicationPolicy, StreamFramingPolicy, ReadablePolicy, WriteablePolicy >::policy > | Handle |
| Type of socket handle required. More... | |
| typedef unsigned char | option_type |
| Type of telnet option numbers. More... | |
Static Public Attributes inherited from senf::term::telnethandler::TerminalType | |
| static option_type const | OPTION_CODE = telnetopt::TERMINAL_TYPE |
Static Public Attributes inherited from senf::term::BaseTelnetProtocol | |
| static unsigned const | DEFAULT_REQUEST_TIMEOUT_MS = 500u |
Static Public Attributes inherited from senf::term::telnethandler::NAWS | |
| static option_type const | OPTION_CODE = telnetopt::NAWS |
AbstractTerminal interface implementation based on telnet.
This class provides a telnet server implementation implementing the AbstractTerminal interface.
TelnetTerminal provides one additional callback which needs to be implemented in a derived class: v_setupFailed(). This member will be called, when not all required telnet options are supported by the telnet client. In this case, the communication will be switched back into line-oriented mode and v_setupFailed() is called.
Definition at line 43 of file TelnetTerminal.hh.
| senf::term::TelnetTerminal::TelnetTerminal | ( | ) |
Definition at line 26 of file TelnetTerminal.cc.
|
virtual |
Get current terminal window height.
Implements senf::term::AbstractTerminal.
Definition at line 50 of file TelnetTerminal.cc.
|
virtual |
Register terminal callbacks.
Implements senf::term::AbstractTerminal.
Definition at line 34 of file TelnetTerminal.cc.
|
virtual |
Get the terminal type.
Implements senf::term::AbstractTerminal.
Definition at line 39 of file TelnetTerminal.cc.
|
protectedpure virtual |
Called when the telnet setup has failed.
|
virtual |
Get current terminal window width.
Implements senf::term::AbstractTerminal.
Definition at line 44 of file TelnetTerminal.cc.
|
virtual |
Write character to terminal.
Implements senf::term::AbstractTerminal.
Definition at line 56 of file TelnetTerminal.cc.