59 lines
1.2 KiB
Bash
Executable File
59 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
DISTROS="redhat gentoo debian suse"
|
|
TYPES="strict strict-mls strict-mcs targeted targeted-mls targeted-mcs"
|
|
POLVER="`checkpolicy -V |cut -f 1 -d ' '`"
|
|
SETFILES="/usr/sbin/setfiles"
|
|
SE_LINK="/usr/bin/semodule_link"
|
|
|
|
do_monolithic_test() {
|
|
local OPTS=""
|
|
|
|
for i in $TYPES; do
|
|
OPTS="TYPE=$i QUIET=@ DIRECT_INITRC=y"
|
|
[ ! -z "$1" ] && OPTS="$OPTS DISTRO=$1"
|
|
make $OPTS bare || exit 1
|
|
echo "**** Options: $OPTS ****"
|
|
make $OPTS conf || exit 1
|
|
make $OPTS || exit 1
|
|
make $OPTS file_contexts || exit 1
|
|
$SETFILES -q -c policy.$POLVER file_contexts || exit 1
|
|
make $OPTS bare || exit 1
|
|
done
|
|
}
|
|
|
|
do_modular_test() {
|
|
local OPTS=""
|
|
|
|
for i in $TYPES; do
|
|
OPTS="TYPE=$i MONOLITHIC=n QUIET=@ DIRECT_INITRC=y"
|
|
[ ! -z "$1" ] && OPTS="$OPTS DISTRO=$1"
|
|
make $OPTS bare || exit 1
|
|
echo "**** Options: $OPTS ****"
|
|
make $OPTS conf || exit 1
|
|
make $OPTS || exit 1
|
|
make $OPTS base modules || exit 1
|
|
mv base.pp tmp
|
|
$SE_LINK tmp/base.pp *.pp || exit 1
|
|
make $OPTS bare || exit 1
|
|
done
|
|
}
|
|
|
|
# Monolithic tests
|
|
|
|
do_monolithic_test
|
|
|
|
for i in $DISTROS; do
|
|
do_monolithic_test $i
|
|
done
|
|
|
|
# Loadable module tests
|
|
|
|
do_modular_test
|
|
|
|
for i in $DISTROS; do
|
|
do_modular_test $i
|
|
done
|
|
|
|
echo "Completed successfully."
|