Fix sourcing prologue.inc if parent directory contains spaces

Most `tests/regression/apparmor/*.sh` scripts contain

    . $bin/prologue.inc

This will explode if one of the parent directories contains a space.

Minimized reproducer:

```
pwd=`dirname $0`
pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
echo "pwd: $bin"
. $bin/prologue.inc
pwd: /tmp/foo bar
./test.sh: line 9: /tmp/foo: No such file or directory
```

Notice that test.sh tries to source `/tmp/foo` instead of `/tmp/foo bar/prologue.inc`.

The fix - as done in this commit - is to quote the prologue.inc path:

    . "$bin/prologue.inc"
This commit is contained in:
Christian Boltz 2024-11-10 20:58:21 +01:00
parent 4c32ad8fb7
commit e1972eb22f
Failed to generate hash of commit
76 changed files with 76 additions and 76 deletions

View file

@ -19,7 +19,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
ns=aa_exec_ns

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
# cacheloc is the top level directory of cache directories
cacheloc="$tmpdir/cache"

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
settest transition
at_secure=$pwd/at_secure

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
settest unix_fd_server
disk_img=$tmpdir/disk_img

View file

@ -27,7 +27,7 @@ pwd=`dirname $0`
pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
TESTS="syscall_ptrace syscall_sethostname \
syscall_setdomainname syscall_setpriority syscall_setscheduler \

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file
subfile=$tmpdir/file2

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file
subfile=$tmpdir/file2

View file

@ -18,7 +18,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file
subfile=$tmpdir/file2

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file
subfile=$tmpdir/file2

View file

@ -18,7 +18,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
dir=$tmpdir/tmpdir

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
# TEST1 unconfined

View file

@ -63,7 +63,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
coreperm=r
nocoreperm=ix

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features dbus
requires_parser_support "dbus,"
. $bin/dbus.inc

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features dbus
requires_parser_support "dbus,"
. $bin/dbus.inc

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features dbus
requires_parser_support "dbus,"
. $bin/dbus.inc

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features dbus
requires_parser_support "dbus,"
. $bin/dbus.inc

View file

@ -20,7 +20,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file
file2="$tmpdir/file (deleted)"

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
# load_and_verify - Generate and load a profile, then verify that raw_data
# matches the generated cached policy

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
helper=$pwd/env_check
setuid_helper=${tmpdir}/env_check

View file

@ -14,7 +14,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
cp -pL /bin/true ${tmpdir}/true
file=${tmpdir}/true

View file

@ -19,7 +19,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=/etc/group

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features domain/stack
settest transition

View file

@ -18,7 +18,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
dir=$tmpdir/tmpdir/

View file

@ -29,7 +29,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file
inheritor=$bin/fd_inheritor

View file

@ -19,7 +19,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file1=$tmpdir/file1
file2=$tmpdir/file2

View file

@ -20,7 +20,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
okperm=rw
badperm1=r

View file

@ -14,7 +14,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
ok_ix_perm=rix
badperm=r

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features io_uring
requires_parser_support "io_uring,"

View file

@ -20,7 +20,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
target=$tmpdir/target
linkfile=$tmpdir/linkfile

View file

@ -20,7 +20,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
target=$tmpdir/target_
linkfile=$tmpdir/link_

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
genrandname()
{

View file

@ -14,7 +14,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
dir=$tmpdir/tmpdir/
perms=w

View file

@ -21,7 +21,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/src
okperm=rw

View file

@ -20,7 +20,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
##
## A. MOUNT

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
cleandir()
{

View file

@ -20,7 +20,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
fifo=${tmpdir}/pipe

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_namespace_interface
# unique_ns - Print a randomly generated, unused namespace identifier to stdout

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features network_v8/af_inet
requires_parser_support "network ip=::1,"

View file

@ -17,7 +17,7 @@ pwd=$(cd $pwd ; /bin/pwd)
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
dir=$tmpdir/tmpdir

View file

@ -18,7 +18,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
srcdir=$tmpdir/src
mntdir=$tmpdir/mnt

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
settest transition

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
settest transition
file=$tmpdir/file

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file
okperm=rw

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
dir=${tmpdir}
subdir=deleteme

View file

@ -26,7 +26,7 @@ pwd=$(cd ${pwd} ; /bin/pwd)
bin=${pwd}
. ${bin}/prologue.inc
. "${bin}/prologue.inc"
target=file1
source=file2

View file

@ -21,7 +21,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
subtest=sub

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
disk_img=$tmpdir/disk_img
new_root=$tmpdir/new_root/

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features ipc/posix_mqueue
requires_parser_support "mqueue,"

View file

@ -21,7 +21,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
# Read permission was required for a confined process to be able to be traced
# using ptrace. This stopped being required or functioning correctly

View file

@ -14,7 +14,7 @@ pwd=`cd $pwd ; pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=${tmpdir}/pwrite
okperm=rw

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_query_interface
settest query_label

View file

@ -18,7 +18,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
dir=$tmpdir/tmpdir
# x is not really needed, see chdir.sh

View file

@ -22,7 +22,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file
file2=$tmpdir/filealpha

View file

@ -18,7 +18,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file1=$tmpdir/file1
file2=$tmpdir/file2

View file

@ -21,7 +21,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/src
okperm=rw

View file

@ -14,7 +14,7 @@ pwd=$(cd $pwd ; /bin/pwd)
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
settest open

View file

@ -47,7 +47,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file
dir="$tmpdir/dir/"

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features network/af_unix

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features domain/stack
settest transition

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features domain/stack
settest transition

View file

@ -21,7 +21,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
##
## A. SWAP

View file

@ -14,7 +14,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
src=$tmpdir/src1
target=$tmpdir/target

View file

@ -20,7 +20,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
##
## A. PTRACE

View file

@ -20,7 +20,7 @@ sysctlbad=/proc/sys/kernel/sysrq
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
##
## C. SYSCTL

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features ipc/sysv_mqueue
requires_parser_support "mqueue,"

View file

@ -20,7 +20,7 @@ bin=$pwd
# kernel feature supported
# need to be able to query the parser if it supports the
# kernel feature
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_any_of_kernel_features network network_v8
port=34567

View file

@ -18,7 +18,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=${tmpdir}/file
socket=${tmpdir}/unix_fd_test

View file

@ -26,7 +26,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
. $bin/unix_socket.inc
requires_kernel_features policy/versions/v7
requires_kernel_features network/af_unix

View file

@ -31,7 +31,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
. $bin/unix_socket.inc
requires_kernel_features policy/versions/v7
requires_kernel_features network/af_unix

View file

@ -26,7 +26,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features policy/versions/v6
#af_mask for downgrade test af_unix for full test
requires_any_of_kernel_features network/af_mask network_v8/af_mask

View file

@ -26,7 +26,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
. $bin/unix_socket.inc
requires_kernel_features policy/versions/v7
requires_kernel_features network/af_unix

View file

@ -17,7 +17,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file=$tmpdir/file
okperm=rwix

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features namespaces/mask/userns_create
requires_parser_support "userns,"

View file

@ -34,7 +34,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
requires_kernel_features file/xattr

View file

@ -16,7 +16,7 @@ pwd=`cd $pwd ; /bin/pwd`
bin=$pwd
. $bin/prologue.inc
. "$bin/prologue.inc"
file="$bin/xattrs_profile"