X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=pppd%2Fsys-osf.c;h=5b1d2ab8342aced220f14866e82dfef713f80d53;hp=8cd7710b7a4989e72c4c5b8782f33b20c4867f02;hb=680642d0a93d312462abd8cb2bf3ac86cb9c1cd7;hpb=7dabc25770ff656c974723282a19f4bdec8deea4 diff --git a/pppd/sys-osf.c b/pppd/sys-osf.c index 8cd7710..5b1d2ab 100644 --- a/pppd/sys-osf.c +++ b/pppd/sys-osf.c @@ -19,7 +19,7 @@ */ #ifndef lint -static char rcsid[] = "$Id: sys-osf.c,v 1.3 1995/04/28 06:26:23 paulus Exp $"; +static char rcsid[] = "$Id: sys-osf.c,v 1.4 1995/05/01 00:26:01 paulus Exp $"; #endif /* @@ -587,6 +587,15 @@ void restore_tty() { if (restore_term) { + if (!default_device) { + /* + * Turn off echoing, because otherwise we can get into + * a loop with the tty and the modem echoing to each other. + * We presume we are the sole user of this tty device, so + * when we close it, it will revert to its defaults anyway. + */ + inittermios.c_lflag &= ~(ECHO | ECHONL); + } if (tcsetattr(fd, TCSAFLUSH, &inittermios) < 0) if (errno != ENXIO) syslog(LOG_WARNING, "tcsetattr: %m");