version 1.63, 2020/08/11 09:45:54 |
version 1.64, 2020/10/03 09:22:26 |
|
|
{ |
{ |
va_list args; |
va_list args; |
char *prompt = NULL; |
char *prompt = NULL; |
int devnull; |
|
pid_t pid; |
pid_t pid; |
void (*osigchld)(int); |
void (*osigchld)(int); |
const char *askpass, *s; |
const char *askpass, *s; |
|
|
return NULL; |
return NULL; |
} |
} |
if (pid == 0) { |
if (pid == 0) { |
if ((devnull = open(_PATH_DEVNULL, O_RDWR)) == -1) |
if (stdfd_devnull(1, 1, 0) == -1) |
fatal("%s: open %s", __func__, strerror(errno)); |
fatal("%s: stdfd_devnull failed", __func__); |
if (dup2(devnull, STDIN_FILENO) == -1 || |
|
dup2(devnull, STDOUT_FILENO) == -1) |
|
fatal("%s: dup2: %s", __func__, strerror(errno)); |
|
closefrom(STDERR_FILENO + 1); |
closefrom(STDERR_FILENO + 1); |
setenv("SSH_ASKPASS_PROMPT", "none", 1); /* hint to UI */ |
setenv("SSH_ASKPASS_PROMPT", "none", 1); /* hint to UI */ |
execlp(askpass, askpass, prompt, (char *)NULL); |
execlp(askpass, askpass, prompt, (char *)NULL); |