blob: 20ee2ba611f9d314198ffae7acd5e0aff6d094f0 [file] [log] [blame]
Sean Middleditchb9e48642009-03-12 23:33:27 -04001=====================================================================
2 libtelnet - TELNET protocol handling library
3=====================================================================
4
5Sean Middleditch
6sean@sourcemud.org
7
8---------------------------------------------------------------------
9The author or authors of this code dedicate any and all copyright
10interest in this code to the public domain. We make this dedication
11for the benefit of the public at large and to the detriment of our
12heirs and successors. We intend this dedication to be an overt act of
13relinquishment in perpetuity of all present and future rights to this
14code under copyright law.
15---------------------------------------------------------------------
16
Sean Middleditch9d2f98a2009-03-14 05:24:56 -040017*** TODO ***
18
19 - RFC 1143 option negotiation algorithm
20 - automatic MCCP2 handling (controllable by host app)
21 - efficient one-byte sub-requests
22 ? MCCP1
23 ? ZMP parsing
24 ? MSSP parsing
25 ? ENVIRON/NEW-ENVIRON parsing
26 ? telnet-status testing tool
27 ? few options to make telnet-proxy even more useful
28
Sean Middleditchb9e48642009-03-12 23:33:27 -040029I. INTRODUCTION
30=====================================================================
31
32libtelnet provides safe and correct handling of the core TELNET
33protocol. It does not include any "smarts," and all use of the
34protocol (such as deciding which options to support, enabling
35and disabling options, or processing subrequests) must be implemented
36by the application author.
37
38II. LIBTELNET API
39=====================================================================
40
41FIXME: fill in notes about user-facing API
42
43III. INTEGRATING LIBTELNET
44=====================================================================
45
46FIXME: fill in notes about implementing the libtelnet_*_cb functions
47
48IV. OUTPUT PROCESSING
49=====================================================================
50
51FIXME: fill in notes about output buffering recommendations
52
53V. SAFETY AND CORRECTNESS CONSIDERATIONS
54=====================================================================
55
56FIXME: fill in notes about recommending the user of libtelnet over
57all output functions for ensuring safety