diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | ssh-add.c | 4 |
2 files changed, 6 insertions, 1 deletions
@@ -1,6 +1,9 @@ | |||
1 | 20001017 | 1 | 20001017 |
2 | - (djm) Add -lregex to cywin libs from Corinna Vinschen | 2 | - (djm) Add -lregex to cywin libs from Corinna Vinschen |
3 | <vinschen@cygnus.com> | 3 | <vinschen@cygnus.com> |
4 | - (djm) Don't rely on atomicio's retval to determine length of askpass | ||
5 | supplied passphrase. Problem report from Lutz Jaenicke | ||
6 | <Lutz.Jaenicke@aet.TU-Cottbus.DE> | ||
4 | 7 | ||
5 | 20001016 | 8 | 20001016 |
6 | - (djm) Sync with OpenBSD: | 9 | - (djm) Sync with OpenBSD: |
@@ -117,7 +117,9 @@ ssh_askpass(char *askpass, char *msg) | |||
117 | fatal("ssh_askpass: exec(%s): %s", askpass, strerror(errno)); | 117 | fatal("ssh_askpass: exec(%s): %s", askpass, strerror(errno)); |
118 | } | 118 | } |
119 | close(p[1]); | 119 | close(p[1]); |
120 | len = atomicio(read, p[0], buf, sizeof buf); | 120 | buf[0] = '\0'; |
121 | atomicio(read, p[0], buf, sizeof buf); | ||
122 | len = strlen(buf); | ||
121 | close(p[0]); | 123 | close(p[0]); |
122 | while (waitpid(pid, &status, 0) < 0) | 124 | while (waitpid(pid, &status, 0) < 0) |
123 | if (errno != EINTR) | 125 | if (errno != EINTR) |