home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.dcom.servers
- Path: sparky!uunet!think.com!paperboy.osf.org!loverso
- From: loverso@coltsfoot.osf.org (John Robert LoVerso)
- Subject: Re: Seeking 8-bit clean connection from Annex to Sun
- Message-ID: <1992Nov6.160215.20096@osf.org>
- Sender: news@osf.org (USENET News System)
- Organization: OSF Research Institute, Cambridge MA
- References: <1992Nov5.134934.16804@panix.com>
- Date: Fri, 6 Nov 1992 16:02:15 GMT
- Lines: 96
-
- How exactly is telnet getting in the way? By default, telnet does various
- translations on a data stream into and out of "network virtual terminal" to
- allow wildy different host architectures to intercommunicate. Most
- of these can be elided.
-
- The Annex CLI rlogin has always been 8-bit (it predates the -8 switch to BSD
- rlogin). Assuming you were using XON/XOFF flow control, then this macro
- should work:
-
- # UUCP dialin macro via rlogin
- alias "uucp dialin"
- keyin /uucp-r/ 1-6@dialin-annex
- }
- <stty attn undef
- <stty iflow none oflow none
- <stty -break -lbreak
- <rlogin uucp-host
- }
-
- I.e., clear the CLI attn character, XON/XOFF flow control state, and
- just use rlogin.
-
- OOPS: that won't work under R6.2 and later, as the CLI attn character
- became a string. Use
- stty attn ""
-
- (of course, if you use "" for any other stty character, you'll get the
- character to a single double quote!! You can still use stty attn ^@, I guess)
-
- If you are alrady using EIA flow control, then you needn't change it.
-
- You might be able to use CLI telnet, but you have a few more things to
- set up:
-
- + Disable CLI telnet escape character.
- + Select binary mode
- + Possibly play with TELNET CRLF translation.
-
- That latter depends upon whether the remote telnet daemon you are connecting
- to is "broken" or not. That is, TELNET NVT dictates that bare CRs in the
- data stream be quoted as CR-NUL, but some older telnetd's don't do the
- right thing and send CR-LF. Thankfully, there is now a port option that
- will help select this, but there is no easy way to force CLI telnet binary
- mode!
-
- In the past, I've found the best way to run UUCP through an Annex is to
- avoid an rlogin/telnet into a host, which causes uucico to be run over
- a pty (lots of host overhead!). Instead, the Annex can directly contact
- the BSD uucpd with this:
-
- # UUCP dialin macro via telnet
- alias "uucp dialin"
- keyin /uucp-t/ 1-6@dialin-annex
- keyin /uucp/ 1-6@dialin-annex
- {
- <stty attn ""
- <stty iflow none oflow none
- <stty -break -lbreak
- <stty tesc ^]
- <telnet -r uucp-host uucp
- <^]mode char remote
- <^]tog crlf
- <^]set esc U
- }
-
- Notice the rather gross way of setting appropriate telnet command options!
- I had hoped that this would have been fixed by Xylogics by now, but...
-
- Anyway, I'm using "telnet -r" there. This is a pseudo-telnet mode that
- still does some character mapping/echoing. It is roughly equivalent to
- what happens in 4.3BSD telnet when you specify a TCP port other than
- "telnet". In terms of the Annex, it avoid SOME overhead of the per-character
- processing dictated by the TELNET protocol, but not all. The internal
- Annex CLI telnet implementation was quite ugly the last time I worked on
- it (R5.0 or so).
-
- "telnet -t" is something Xylogics recently added that (apparently) does
- nothing more than open a raw TCP stream to the destination. Hopefully,
- it avoids all the normal CLI telnet internals, since it doesn't really
- have any need for them. It should take much less Annex CPU to pump
- high numbers of characters through.
-
- [There is one botch I've be snagged by with "telnet -t" - it requires
- that you enter a TCP port number. I don't have a problem with it
- wanting a port, but it apparently goes though some pain to make sure
- you cannot enter a symbolic name. I.e.,
- gizmo v1# telnet -t coltsfoot smtp
- Port number required!
- SIGH!]
-
- To get an 8-bit path under a "normal" telnet login session talking to
- a typical 4BSD telnetd,, it should be sufficient to remove the CLI
- attention character, "tog binary" at the telnet command prompt,
- and then unset the telnet escape character.
-
- John
-