Look for $SHELL on the path for ProxyCommand/LocalCommand

There's some debate on the upstream bug about whether POSIX requires this.
I (Colin Watson) agree with Vincent and think it does.

Bug: https://bugzilla.mindrot.org/show_bug.cgi?id=1494
Bug-Debian: http://bugs.debian.org/492728
Last-Update: 2020-02-21

Patch-Name: shell-path.patch

Gbp-Pq: Name shell-path.patch
This commit is contained in:
Colin Watson 2014-02-09 16:10:00 +00:00 committed by Lu zhiping
parent b7a642749f
commit 9f1762840d
1 changed files with 2 additions and 2 deletions

View File

@ -260,7 +260,7 @@ ssh_proxy_connect(struct ssh *ssh, const char *host, const char *host_arg,
/* Execute the proxy command. Note that we gave up any
extra privileges above. */
ssh_signal(SIGPIPE, SIG_DFL);
execv(argv[0], argv);
execvp(argv[0], argv);
perror(argv[0]);
exit(1);
}
@ -1388,7 +1388,7 @@ ssh_local_cmd(const char *args)
if (pid == 0) {
ssh_signal(SIGPIPE, SIG_DFL);
debug3("Executing %s -c \"%s\"", shell, args);
execl(shell, shell, "-c", args, (char *)NULL);
execlp(shell, shell, "-c", args, (char *)NULL);
error("Couldn't execute %s -c \"%s\": %s",
shell, args, strerror(errno));
_exit(1);