From cb64288cfed3d370f144dcfd2bc76094268019d9 Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Fri, 5 Apr 2002 23:34:26 +0000 Subject: Patch from Axel Barnitzke to fixup a problem with getpass() echoing passwords... --- libc/unistd/getpass.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'libc/unistd') diff --git a/libc/unistd/getpass.c b/libc/unistd/getpass.c index 92d3565c8..83b0140c7 100644 --- a/libc/unistd/getpass.c +++ b/libc/unistd/getpass.c @@ -45,7 +45,7 @@ getpass (prompt) /* Try to write to and read from the terminal if we can. If we can't open the terminal, use stderr and stdin. */ - in = fopen ("/dev/tty", "w+"); + in = fopen ("/dev/tty", "r+"); if (in == NULL) { in = stdin; @@ -61,7 +61,7 @@ getpass (prompt) /* Save the old one. */ s = t; /* Tricky, tricky. */ - t.c_lflag &= ~(ECHO|ISIG); + t.c_lflag &= ~(ECHO|ICANON|ISIG); tty_changed = (tcsetattr (fileno (in), TCSAFLUSH|TCSASOFT, &t) == 0); } else -- cgit v1.2.3