summaryrefslogtreecommitdiffstats
path: root/src/cmd/shell.sh
diff options
context:
space:
mode:
authorP. J. McDermott <pj@pehjota.net>2015-12-07 17:54:51 (EST)
committer P. J. McDermott <pj@pehjota.net>2015-12-07 17:54:51 (EST)
commit65efea4d3a28c866f42d09b73e17afdf56b44f2e (patch)
treedfb8bb4cabf396bbd77a1931d294654a461eb5ed /src/cmd/shell.sh
parenta1abe55bbfd39a8d9a8722c596aceac8941e171a (diff)
cmd_*_main(): Load /etc/os-release in a subshell
Limit the effects of this sort of arbitrary code execution, or at least avoid cluttering the namespace.
Diffstat (limited to 'src/cmd/shell.sh')
-rw-r--r--src/cmd/shell.sh3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/cmd/shell.sh b/src/cmd/shell.sh
index 468da0f..f6eb3d3 100644
--- a/src/cmd/shell.sh
+++ b/src/cmd/shell.sh
@@ -37,8 +37,7 @@ cmd_shell_main()
root="$(block_mount "${dev}")"
fi
- . "${root}/etc/os-release"
- profile_set "${ID}"
+ profile_set "$(. "${root}/etc/os-release" && printf '%s' "${ID}")"
session_begin "${root}" . : false
if [ ${#} -eq 0 ]; then