mirror of
https://github.com/tmate-io/tmate.git
synced 2024-11-08 09:14:22 +01:00
Sync OpenBSD patchset 960:
Reject $SHELL if it is not a full path.
This commit is contained in:
parent
326c5bf1b4
commit
edd59d9e0f
4
tmux.c
4
tmux.c
@ -101,7 +101,9 @@ getshell(void)
|
||||
int
|
||||
checkshell(const char *shell)
|
||||
{
|
||||
if (shell == NULL || *shell == '\0' || areshell(shell))
|
||||
if (shell == NULL || *shell == '\0' || *shell != '/')
|
||||
return (0);
|
||||
if (areshell(shell))
|
||||
return (0);
|
||||
if (access(shell, X_OK) != 0)
|
||||
return (0);
|
||||
|
2
window.c
2
window.c
@ -694,7 +694,7 @@ window_pane_spawn(struct window_pane *wp, const char *cmd, const char *shell,
|
||||
if (*wp->cmd != '\0') {
|
||||
/* Set SHELL but only if it is currently not useful. */
|
||||
shell = getenv("SHELL");
|
||||
if (shell == NULL || *shell == '\0' || areshell(shell))
|
||||
if (checkshell(shell))
|
||||
setenv("SHELL", wp->shell, 1);
|
||||
|
||||
execl(_PATH_BSHELL, "sh", "-c", wp->cmd, (char *) NULL);
|
||||
|
Loading…
Reference in New Issue
Block a user