Skip to content

Latest commit

 

History

History
45 lines (35 loc) · 2.7 KB

index.md

File metadata and controls

45 lines (35 loc) · 2.7 KB

TelnetNegotiationCore documentation

A testable implementation of telnet and as many of its RFCs as are viable, written with MUDs in mind. Every option is a plugin; the interpreter is a state machine over the byte stream; all outgoing writes are serialized for you.

dotnet add package TelnetNegotiationCore

Start here

Guides

Page What it covers
Getting started TelnetInterpreterBuilder, BuildAndStartAsync, AddDefaultMUDProtocols
Dependency injection AddTelnetServer() / AddTelnetClient(), Kestrel, ITelnetInterpreterFactory
Writing a client A TcpClient connection, wired up
Writing a server A Kestrel ConnectionHandler, and the MSDP server model
Saying who your application is ClientIdentity, and the MTTS bits that are calculated rather than claimed
Detecting prompts EOR, Go-Ahead and Packet Patch — three sources, one callback
Keep-alive IAC NOP on an idle connection, and what it does not prove
Managing the read loop yourself UsePipe, UseStream, OnNegotiation, InterpretByteArrayAsync
Implementing an authentication mechanism Kerberos, SRP, RSA and TLS on top of RFC 2941
Line endings and carriage returns CR LF, CR NUL and bare CR, and the three modes for choosing what they mean
The property-based regression suite Seven invariants over generated input, and how to read a counterexample

Concepts

Reference