====== std.net.telnet ====== Telnet (RFC 854) ist ein textbasiertes Netzwerkprotokoll für Remote-Terminalzugriff. Die Unit implementiert Verbindungsaufbau, Optionsaushandlung (WILL/WONT/DO/DONT) für Terminal-Type, Fenstergröße, Echo-Modus und Zeilenauflösung sowie zeilenbasiertes Senden und byteweises Lesen von Antworten. Einsatzbereiche sind die Ansteuerung von Netzwerkgeräten (Router, Switches, ältere Drucker), Legacy-Systemen ohne SSH, industrielle Steuergeräte, automatisierte Tests textbasierter Dienste und die Analyse von Telnet-Diensten. ---- ===== Imports ===== * ''std.net.socket'' * ''std.net.dns'' * ''std.net.types'' ---- ===== Konstanten ===== ^ Name ^ Typ ^ Wert ^ Sichtbarkeit ^ | ''TELNET_PORT'' | ''int64'' | ''23'' | pub | | ''IAC'' | ''int64'' | ''255'' | pub | | ''DONT'' | ''int64'' | ''254'' | pub | | ''DO'' | ''int64'' | ''253'' | pub | | ''WONT'' | ''int64'' | ''252'' | pub | | ''WILL'' | ''int64'' | ''251'' | pub | | ''SB'' | ''int64'' | ''250'' | pub | | ''SE'' | ''int64'' | ''240'' | pub | | ''NOP'' | ''int64'' | ''241'' | pub | | ''DM'' | ''int64'' | ''242'' | pub | | ''BRK'' | ''int64'' | ''243'' | pub | | ''IP'' | ''int64'' | ''244'' | pub | | ''AO'' | ''int64'' | ''245'' | pub | | ''AYT'' | ''int64'' | ''246'' | pub | | ''EC'' | ''int64'' | ''247'' | pub | | ''EL'' | ''int64'' | ''248'' | pub | | ''GA'' | ''int64'' | ''249'' | pub | | ''OPT_BINARY'' | ''int64'' | ''0'' | pub | | ''OPT_ECHO'' | ''int64'' | ''1'' | pub | | ''OPT_SUPPRESS_GA'' | ''int64'' | ''3'' | pub | | ''OPT_TERMINAL_TYPE'' | ''int64'' | ''24'' | pub | | ''OPT_WINDOW_SIZE'' | ''int64'' | ''31'' | pub | | ''OPT_TERMINAL_SPEED'' | ''int64'' | ''32'' | pub | | ''OPT_LINEMODE'' | ''int64'' | ''34'' | pub | | ''OPT_NEW_ENVIRON'' | ''int64'' | ''39'' | pub | ---- ===== Typen ===== ==== TelnetConn (struct) ==== ^ Feld ^ Typ ^ ---- ===== Funktionen ===== ^ Signatur ^ Sichtbarkeit ^ Beschreibung ^ | ''TelnetConnectRaw(ip: int64, port: int64): TelnetConn'' | pub | Verbindung per IP ohne DNS aufbauen | | ''TelnetConnect(host: int64, port: int64): TelnetConn'' | pub | Verbindung per Hostname aufbauen | | ''TelnetRead(conn: TelnetConn, buf: int64, bufsize: int64): int64'' | pub | Rohdaten aus Telnet-Verbindung lesen | | ''TelnetWrite(conn: TelnetConn, buf: int64, bufsize: int64): int64'' | pub | Rohdaten in Verbindung schreiben | | ''TelnetWriteByte(conn: TelnetConn, b: int64): int64'' | pub | Einzelnes Byte senden | | ''TelnetSendCommand(conn: TelnetConn, cmd: int64, opt: int64): int64'' | pub | IAC-Kommando mit Option senden | | ''TelnetWill(conn: TelnetConn, opt: int64): int64'' | pub | WILL-Verhandlungsbefehl senden | | ''TelnetWont(conn: TelnetConn, opt: int64): int64'' | pub | WONT-Verhandlungsbefehl senden | | ''TelnetDo(conn: TelnetConn, opt: int64): int64'' | pub | DO-Verhandlungsbefehl senden | | ''TelnetDont(conn: TelnetConn, opt: int64): int64'' | pub | DONT-Verhandlungsbefehl senden | | ''TelnetNegotiate(conn: TelnetConn)'' | pub | Standard-Optionsaushandlung durchführen | | ''TelnetSendLine(conn: TelnetConn, line: int64, len: int64): int64'' | pub | Textzeile mit CR/LF senden | | ''TelnetClose(conn: TelnetConn)'' | pub | Telnet-Verbindung schließen |