summaryrefslogtreecommitdiffstats
path: root/usr.bin/ssh/readpass.c
diff options
context:
space:
mode:
authordjm <djm@openbsd.org>2019-11-27 05:00:17 +0000
committerdjm <djm@openbsd.org>2019-11-27 05:00:17 +0000
commitda06e09442f7cbca5156f41379c90fecfc7b7776 (patch)
tree4569b5d177d2da3790a7d04ecf261189b1f410f9 /usr.bin/ssh/readpass.c
parentknf, make types grepable. ok claudio@ (diff)
downloadwireguard-openbsd-da06e09442f7cbca5156f41379c90fecfc7b7776.tar.xz
wireguard-openbsd-da06e09442f7cbca5156f41379c90fecfc7b7776.zip
use error()+_exit() instead of fatal() to avoid running cleanup
handlers in child process; spotted via weird regress failures in portable
Diffstat (limited to 'usr.bin/ssh/readpass.c')
-rw-r--r--usr.bin/ssh/readpass.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/usr.bin/ssh/readpass.c b/usr.bin/ssh/readpass.c
index e6b4123fcf0..a4ca4dd89b1 100644
--- a/usr.bin/ssh/readpass.c
+++ b/usr.bin/ssh/readpass.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: readpass.c,v 1.57 2019/11/15 00:32:40 djm Exp $ */
+/* $OpenBSD: readpass.c,v 1.58 2019/11/27 05:00:17 djm Exp $ */
/*
* Copyright (c) 2001 Markus Friedl. All rights reserved.
*
@@ -248,7 +248,8 @@ notify_start(int force_askpass, const char *fmt, ...)
closefrom(STDERR_FILENO + 1);
setenv("SSH_ASKPASS_PROMPT", "none", 1); /* hint to UI */
execlp(askpass, askpass, prompt, (char *)NULL);
- fatal("%s: exec(%s): %s", __func__, askpass, strerror(errno));
+ error("%s: exec(%s): %s", __func__, askpass, strerror(errno));
+ _exit(1);
/* NOTREACHED */
}
if ((ret = calloc(1, sizeof(*ret))) == NULL) {