This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Next revision Both sides next revision | ||
tutorials:crystal_bbs:part_zero [2017/03/19 12:06] sardaukar |
tutorials:crystal_bbs:part_zero [2017/03/19 12:07] sardaukar |
||
---|---|---|---|
Line 110: | Line 110: | ||
The one problem with this setup is that there is not definitive "end" marker to the negotiation step of the connection, since //at any time// you can receive or send one of these messages to turn features on and off. | The one problem with this setup is that there is not definitive "end" marker to the negotiation step of the connection, since //at any time// you can receive or send one of these messages to turn features on and off. | ||
- | So Telnet in a shell is this - a text-oriented protocol that has special command messages mixed in. | + | |
+ | So this is Telnet in a nutshell - a text-oriented protocol that has special command messages mixed in. | ||
Telnet IAC messages should not be confused for [[resources:misc:ansi_escape_codes|ANSI Escape Codes]] that affect the terminal like ''\e[2J'' that clears the screen and so on. You might be familiar with them if you ever customized a Bash prompt, but they are related to the ANSI standard, and not Telnet related. | Telnet IAC messages should not be confused for [[resources:misc:ansi_escape_codes|ANSI Escape Codes]] that affect the terminal like ''\e[2J'' that clears the screen and so on. You might be familiar with them if you ever customized a Bash prompt, but they are related to the ANSI standard, and not Telnet related. | ||
In the [[tutorials:crystal_bbs:part_one|next part]] of the tutorial, we will create a basic TCP server that will use some of what we now know about Telnet to negotiate basic features with clients. | In the [[tutorials:crystal_bbs:part_one|next part]] of the tutorial, we will create a basic TCP server that will use some of what we now know about Telnet to negotiate basic features with clients. |