Simon Slavin <slavins@hearsay.demon.co.uk@localhost> wrote:
+---------------
| NVT is a certain, rather sophisticated, type of TCP session.
| It's very useful when doing remote Command Line Interface
| stuff, but it's /not/ built-into the basic spec for TCP.
| Furtunately, most telnet software has an option to turn NVT
| off and do a straight ASCII session.
+---------------
All true, but the client Telnet program (at least, the BSD-derived
versions) *will* speak the full Telnet NVT protocol with remote ports
other than "the" Telnet well-known port (23) if the remote end sends
them NVT commands. I've done this a lot in the past, running specialized
[read: hacked up!] Telnet servers on ports other than 23.
The same is true if you use a standard Telnet client to connect to one
of those Ethernet-based "serial terminal server" boxes. They present
a separate TCP/Telnet/NVT server port for each serial interface (e.g.,
5000, 5001, 5002, etc.) and a client Telnet speaks the (almost-)full NVT
protocol with them just fine -- including the "send brk" escape!
But if the answering TCP server *doesn't* send anything that looks
like a Telnet/NVT option, I agree that most Telnet clients will simply
put the terminal in local-echo line mode, and pass straight ASCII through.
(I say "line mode", because when I Telnet to an HTTP server [which I
also do a lot, when testing such servers], I'm able to use backspace
to erase errors, and the remote HTTP server doesn't complain about
"500 POST^H^H^H^HGET Command Not Implemented".)
Obligatory Scheme content: If your Scheme provides a socket library, see
how small an HTTP server you can write entirely in Scheme! (Hint: You
should be able to do it in less than a page of code.) Now run it on some
random high-numbered port. Test it first by Telnet'ing to that port and
typing "GET / HTTP/1.0"<return><return>. If that works, point a browser
at it...
-Rob
-----
Rob Warnock, 41L-955 rpw3@sgi.com
Applied Networking http://reality.sgi.com/rpw3/
Silicon Graphics, Inc. Phone: 650-933-1673
1600 Amphitheatre Pkwy. PP-ASEL-IA
Mountain View, CA 94043