Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!seismo!husc6!cmcl2!rutgers!sri-spam!ames!ucbcad!ucbvax!ENGVAX.SCG.HAC.COM!KVC From: KVC@ENGVAX.SCG.HAC.COM (Kevin Carosso) Newsgroups: comp.protocols.tcp-ip Subject: Re: wollongong telnet and new line processing Message-ID: <8707212110.AA13986@ucbvax.Berkeley.EDU> Date: Mon, 20-Jul-87 22:55:00 EDT Article-I.D.: ucbvax.8707212110.AA13986 Posted: Mon Jul 20 22:55:00 1987 Date-Received: Thu, 23-Jul-87 04:47:41 EDT Sender: daemon@ucbvax.BERKELEY.EDU Distribution: world Organization: The ARPA Internet Lines: 54 > Unix translate the \r into a \n and sends it across the net > to the VMS machine which promptly deletes the word GUEST. This > makes logging in a little difficult. > I say this because if you are connect to the Unix machine > via a direct line everything works fine. This problem only > occurs when you are connected via a pty. We use Bridge > cs/1 terminal servers almost exclusivly, hence you are always > connected to a pty and never to a direct line. > This leads me to think that the problem lies somewhere in the > pty driver. Anyone have any ideas? > Bill King We had the same problem here, but a different manifestation (couldn't run a local editor or TELNET to a VMS system running CMU IP/TCP). The problem occurs when you connect via TELNET to a 4.3 system and then run any program which reads in raw mode and expects to see EXACTLY the key the user typed. I traced the problem to the fact that "telnetd.c" has the following in it: /* * We map \r\n ==> \n, since \r\n says * that we want to be in column 1 of the next * printable line, and \n is the standard * unix way of saying that (\r is only good * if CRMOD is set, which it normally is). */ if ((myopts[TELOPT_BINARY] == OPT_NO) && c == '\r') { if ((ncc > 0) && ('\n' == *netip)) { netip++; ncc--; c = '\n'; } else { state = TS_CR; } } I don't think it's right to mapto . I changed it to map to instead, and everything works just fine. The terminal driver will map the to when necessary and programs that think that are supposed to get a now work fine. My rationale was that the UNIX tty driver is set up to work with terminals that usually send when the user hits "carriage return". A pty works just like a tty, so we should be sending into it. I suppose another approach might be to say that the Bridge TELNET code is broken and that it shouldn't be sending when you type "carriage return" but should send . I can't fix the Bridge code, though. /Kevin Carosso kvc@engvax.scg.hac.com Hughes Aircraft Co. kvc%engvax@oberon.usc.edu