mk: hardened PWD check (deny symlinks)

we check if the first argument is "./mk" and bail if not,
which forces you to be in the xbmk work directory.

however, this check is flawed because symlinks were still
possible.

this patch prevents a same-named symlink "mk" pointing to
the real mk from being used.

this hardening is necessary, due to several built-in
assumptions inherent within the design of xbmk.

Signed-off-by: Leah Rowe <leah@libreboot.org>
This commit is contained in:
Leah Rowe
2025-09-05 11:46:16 +01:00
parent d06d6a1905
commit 5096e0040f

5
mk
View File

@@ -5,7 +5,10 @@
set -u -e
if [ "$0" != "./mk" ]; then
ispwd="true"
[ "$0" = "./mk" ] || ispwd="false"
[ "$ispwd" = "true" ] && [ -L "mk" ] && ispwd="false"
if [ "$ispwd" = "false" ]; then
printf "You must run this in the proper work directory.\n" 1>&2
exit 1
fi