sepgsql-v9.3-test-script-fixup.v1.patch
application/octet-stream
Filename: sepgsql-v9.3-test-script-fixup.v1.patch
Type: application/octet-stream
Part: 1
Patch
Format: unified
Series: patch v9
| File | + | − |
|---|---|---|
| contrib/sepgsql/test_sepgsql | 45 | 1 |
contrib/sepgsql/test_sepgsql | 46 +++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 45 insertions(+), 1 deletion(-)
diff --git a/contrib/sepgsql/test_sepgsql b/contrib/sepgsql/test_sepgsql
index 8d1a35c..5d46600 100755
--- a/contrib/sepgsql/test_sepgsql
+++ b/contrib/sepgsql/test_sepgsql
@@ -14,6 +14,10 @@
PG_BINDIR=`pg_config --bindir`
+# It must move to contrib/sepgsql directory to read sql commands and
+# write its results on the expected directory.
+cd `dirname $0`
+
echo
echo "============== checking selinux environment =============="
@@ -133,7 +137,47 @@ if [ ! -e "${SELINUX_MNT}/booleans/sepgsql_regression_test_mode" ]; then
echo ""
exit 1
fi
-echo "ok"
+EXPECTED_POLVER="1.07"
+REGTEST_POLVER="`sudo semodule -l | awk '/^sepgsql-regtest/ {print $2}'`"
+if [ -z "$REGTEST_POLVER" ]; then
+ echo "uncertain"
+ echo
+ echo "The 'sepgsql-regtest' policy module version ${EXPECTED_POLVER} has"
+ echo "to be installed, however, it takes root privilege to confirm this."
+ echo "We expected sudo is configured on the current user, but it didn't"
+ echo "works well. If regression test generates some difference towards"
+ echo "expected one, please ensure the version of installed policy module."
+ echo
+ echo "To confirm that the policy package is installed, use this command:"
+ echo ""
+ echo " \$ sudo semodule -l | grep sepgsql"
+ echo ""
+ echo "Expected result is:"
+ echo " sepgsql-regtest ${EXPECTED_POLVER}"
+ echo
+elif [ "$REGTEST_POLVER" != "$EXPECTED_POLVER" ]; then
+ echo "failed"
+ echo
+ echo "The 'sepgsql-regtest' policy module version ${EXPECTED_POLVER} has"
+ echo "to be installed to run this regression test as expected,"
+ echo "but version ${REGTEST_POLVER} was installed here."
+ echo "You can install this module using the following commands:"
+ echo ""
+ echo " \$ make -f /usr/share/selinux/devel/Makefile clean"
+ echo " \$ make -f /usr/share/selinux/devel/Makefile"
+ echo " \$ sudo semodule -u sepgsql-regtest.pp"
+ echo ""
+ echo "To confirm that the policy package is installed, use this command:"
+ echo ""
+ echo " \$ sudo semodule -l | grep sepgsql"
+ echo ""
+ echo "Expected result is:"
+ echo " sepgsql-regtest ${EXPECTED_POLVER}"
+ echo
+ exit 1
+else
+ echo "found version ${REGTEST_POLVER}"
+fi
# Verify that sepgsql_regression_test_mode is active.
echo -n "checking whether policy is enabled ... "