rlogin trouble: Chars translated into ^D
David L. Markowitz
felix!arcturus!dav at hplabs.hp.com
Tue Apr 25 05:00:26 AEST 1989
seth at sirius.ctr.columbia.edu (Seth Robertson) writes:
> I have been having this trouble whereby if a person rlogin/telnets to
> various machines, when they type, all of their characters get translated
> into ^Ds. I personally use ksh, and this does not happen to me. However,
> when su to root (which uses csh) the characters again are translated. The
> translation also occurs if I use `Mail`.
>
> The problem can be avoided (for me) if I rlogin to the same machine
> (getting a new pseudo-tty #). This seems to happen (with no apparent
> cause, on a fairly frequent bases on the first rlogin session (but not
> always ttyp0)
>
> Has anybody else had this trouble? Any advice? I am running 4.0
This has to qualify as one of the most frequently asked questions on here.
This problem has existed for a long time, and is still in 4.0 and 4.0.1.
Are you listening, Sun?
The trigger of this bug is a background process. Whenever a process is
put in the background from a pty without redirecting its standard input,
and the pty is then closed (remote user logs out, window user exits from
that window), the O.S. is supposed to reconnect the input of that process
to the null device. For some reason (anyone know why?) it screws up the
pty in so doing such that any new process which tries to use it is marked
the same way (but only after a character is typed). This effect goes away
when the process exits.
The astute observer will note that the effect of this is not quite to
"translate all chars into ^D", but instead to translate any char into an
infinite sequence of ^D's. Try setting ignoreeof in the .cshrc of a csh
and then run it on such a pty. You will see lots of 'Use "exit" to leave
csh.' messages after typing one character.
Your choice of work-arounds:
1. Always redirect input of background jobs being run on pty's that
will be closed before they are done (I know, try teaching that
to the freshmen).
2. Kill the offending process (that'll teach that frosh!)
3. Open a window/rlogin, open another, use the second one. You may
kill the first if you wish, but this will allow that pty to annoy
some other user who is less intelligent and experienced than you
are. (Closing the window is fine, just don't type at it).
4. Everybody call (800) USA-4SUN and tell them we won't buy any more
hardware/software/maintenance until they fix this bug. Oh, and
picket the April 13th announcement bash too.
I usually use #2.
--
David L. Markowitz Rockwell International
...!sun!sunkist!arcturus!dav dav at arcturus.UUCP
The above opinions are merely that, and only mine.
More information about the Comp.sys.sun
mailing list