instead of the "ttyfd" variable that was put in for
streams pty support on Suns. (The ttyfd stuff is
now just an ifdef.) This change fixes a problem where
telnetd was not coming up in linemode properly.
SCCS-vsn: libexec/telnetd/sys_term.c 5.18
-static char sccsid[] = "@(#)sys_term.c 5.17 (Berkeley) %G%";
+static char sccsid[] = "@(#)sys_term.c 5.18 (Berkeley) %G%";
#endif /* not lint */
#include "telnetd.h"
#endif /* not lint */
#include "telnetd.h"
# endif
# endif /* TCSANOW */
struct termios termbuf, termbuf2; /* pty control structure */
# endif
# endif /* TCSANOW */
struct termios termbuf, termbuf2; /* pty control structure */
#endif /* USE_TERMIO */
/*
#endif /* USE_TERMIO */
/*
(void) ioctl(pty, TIOCGSTATE, (char *)&termbuf.state);
# endif
#else
(void) ioctl(pty, TIOCGSTATE, (char *)&termbuf.state);
# endif
#else
(void) tcgetattr(ttyfd, &termbuf);
(void) tcgetattr(ttyfd, &termbuf);
+# else
+ (void) tcgetattr(pty, &termbuf);
+# endif
#endif
termbuf2 = termbuf;
}
#endif
termbuf2 = termbuf;
}
(void) ioctl(pty, TIOCLSET, (char *)&termbuf.lflags);
#else /* USE_TERMIO */
if (bcmp((char *)&termbuf, (char *)&termbuf2, sizeof(termbuf)))
(void) ioctl(pty, TIOCLSET, (char *)&termbuf.lflags);
#else /* USE_TERMIO */
if (bcmp((char *)&termbuf, (char *)&termbuf2, sizeof(termbuf)))
(void) tcsetattr(ttyfd, TCSANOW, &termbuf);
(void) tcsetattr(ttyfd, TCSANOW, &termbuf);
+# else
+ (void) tcsetattr(pty, TCSANOW, &termbuf);
+# endif
# if defined(CRAY2) && defined(UNICOS5)
needtermstat = 1;
# endif
# if defined(CRAY2) && defined(UNICOS5)
needtermstat = 1;
# endif
if (t < 0)
fatalperror(net, line);
if (t < 0)
fatalperror(net, line);
#ifdef USE_TERMIO
ttyfd = t;
#endif
#ifdef USE_TERMIO
ttyfd = t;
#endif
if (ioctl(t, I_PUSH, "ptem") < 0)
fatal(net, "I_PUSH ptem");
if (ioctl(t, I_PUSH, "ldterm") < 0)
if (ioctl(t, I_PUSH, "ptem") < 0)
fatal(net, "I_PUSH ptem");
if (ioctl(t, I_PUSH, "ldterm") < 0)