*
* Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
*
- * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
+ * Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
#include "libbb.h"
struct sigaction sa, oldsa;
struct termios tio, oldtio;
- tcgetattr(fd, &oldtio);
+ fputs(prompt, stdout);
+ fflush_all();
tcflush(fd, TCIFLUSH);
+
+ tcgetattr(fd, &oldtio);
tio = oldtio;
-#ifndef IUCLC
-# define IUCLC 0
-#endif
+#if 0
+ /* Switch off UPPERCASE->lowercase conversion (never used since 198x)
+ * and XON/XOFF (why we want to mess with this??)
+ */
+# ifndef IUCLC
+# define IUCLC 0
+# endif
tio.c_iflag &= ~(IUCLC|IXON|IXOFF|IXANY);
- tio.c_lflag &= ~(ECHO|ECHOE|ECHOK|ECHONL|TOSTOP);
+#endif
+ /* Switch off echo */
+ tio.c_lflag &= ~(ECHO|ECHOE|ECHOK|ECHONL);
tcsetattr(fd, TCSANOW, &tio);
memset(&sa, 0, sizeof(sa));
alarm(timeout);
}
- fputs(prompt, stdout);
- fflush_all();
-
if (!passwd)
passwd = xmalloc(sizeof_passwd);
ret = passwd;