From d9efe384aaff0134b9502c447b92a81dab3dd68e Mon Sep 17 00:00:00 2001 From: netblue30 Date: Sat, 12 Dec 2015 09:11:52 -0500 Subject: compile test --- test/compile/compile.sh | 130 ++++++++++++++++++++++++++++++++++++++++++++++++ todo | 12 ++--- 2 files changed, 135 insertions(+), 7 deletions(-) create mode 100755 test/compile/compile.sh diff --git a/test/compile/compile.sh b/test/compile/compile.sh new file mode 100755 index 000000000..f4440e321 --- /dev/null +++ b/test/compile/compile.sh @@ -0,0 +1,130 @@ +#!/bin/bash + +arr[1]="TEST 1: standard compilation" +arr[2]="TEST 2: compile seccomp disabled" +arr[3]="TEST 3: compile chroot disabled" +arr[4]="TEST 4: compile bind disabled" + + +# remove previous reports and output file +cleanup() { + rm -f report* + rm -fr firejail +} + +print_title() { + echo + echo + echo + echo "**************************************************" + echo $1 + echo "**************************************************" +} + +while [ $# -gt 0 ]; do # Until you run out of parameters . . . + case "$1" in + --clean) + cleanup + exit + ;; + --help) + echo "./autotest.sh [--clean|--help]" + exit + ;; + esac + shift # Check next set of parameters. +done + +cleanup +# enable sudo +sudo ls -al + +#***************************************************************** +# TEST 1 +#***************************************************************** +# - checkout source code +# - check compilation +# - install +#***************************************************************** +print_title "${arr[1]}" +git clone https://github.com/netblue30/firejail.git +cd firejail +./configure --prefix=/usr --enable-fatal-warnings 2>&1 | tee ../output-configure +make -j4 2>&1 | tee ../output-make +sudo make install 2>&1 | tee ../output-install +cd .. +grep Warning output-configure output-make output-install > ./report-test1 +grep Error output-configure output-make output-install >> ./report-test1 +rm output-configure output-make output-install + + +#***************************************************************** +# TEST 2 +#***************************************************************** +# - disable seccomp configuration +# - check compilation +#***************************************************************** +print_title "${arr[2]}" +# seccomp +cd firejail +make distclean +./configure --prefix=/usr --disable-seccomp --enable-fatal-warnings 2>&1 | tee ../output-configure +make -j4 2>&1 | tee ../output-make +cd .. +grep Warning output-configure output-make > ./report-test2 +grep Error output-configure output-make >> ./report-test2 +rm output-configure output-make + +#***************************************************************** +# TEST 3 +#***************************************************************** +# - disable chroot configuration +# - check compilation +#***************************************************************** +print_title "${arr[3]}" +# seccomp +cd firejail +make distclean +./configure --prefix=/usr --disable-chroot --enable-fatal-warnings 2>&1 | tee ../output-configure +make -j4 2>&1 | tee ../output-make +cd .. +grep Warning output-configure output-make > ./report-test3 +grep Error output-configure output-make >> ./report-test3 +rm output-configure output-make + +#***************************************************************** +# TEST 4 +#***************************************************************** +# - disable bindconfiguration +# - check compilation +#***************************************************************** +print_title "${arr[3]}" +# seccomp +cd firejail +make distclean +./configure --prefix=/usr --disable-bind --enable-fatal-warnings 2>&1 | tee ../output-configure +make -j4 2>&1 | tee ../output-make +cd .. +grep Warning output-configure output-make > ./report-test4 +grep Error output-configure output-make >> ./report-test4 +rm output-configure output-make + + +#***************************************************************** +# PRINT REPORTS +#***************************************************************** +echo +echo +echo +echo +echo "**********************************************************" +echo "TEST RESULTS" +echo "**********************************************************" + +wc -l report-test* +echo + + + + +exit diff --git a/todo b/todo index e63005e1d..e87280f5e 100644 --- a/todo +++ b/todo @@ -66,13 +66,6 @@ socat UNIX-LISTEN:/tmp/mysoc,fork ABSTRACT-CONNECT:/tmp/dbus-awBoQTCc & in sandbox socat ABSTRACT-LISTEN:/tmp/dbus-awBoQTCc,fork UNIX-CONNECT:/tmp/mysock -11. autotest for config options: - -./configure --enable-fatal-warnings --prefix=/usr -./configure --enable-fatal-warnings --disable-seccomp --prefix=/usr -./configure --enable-fatal-warnings --disable-chroot --prefix=/usr -./configure --enable-fatal-warnings --disable-bind --prefix=/usr - 12. do not allow symlinks for --bind 13. While using --net=eth0 assign the name of the interface inside the sandbox as eth0 @@ -124,3 +117,8 @@ http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_2 22. Fix manpage: W: firejail: manpage-has-errors-from-man usr/share/man/man5/firejail-profile.5.gz 84: `\ ' is not allowed in an escape name if building a 32bit package, rename the deb file manually + +23. transmission-gtk when using tracelog: + +Dec 12 07:32:36 debian kernel: [ 1564.772297] transmission-gt[3680]: segfault at 0 ip 00007f44ba515348 +sp 00007ffee7154288 error 4 in libc-2.13.so[7f44ba400000+ -- cgit v1.2.3-54-g00ecf