aboutsummaryrefslogtreecommitdiffstats
path: root/test/compile/compile.sh
diff options
context:
space:
mode:
Diffstat (limited to 'test/compile/compile.sh')
-rwxr-xr-xtest/compile/compile.sh150
1 files changed, 131 insertions, 19 deletions
diff --git a/test/compile/compile.sh b/test/compile/compile.sh
index e3e9bef2b..44e67fe22 100755
--- a/test/compile/compile.sh
+++ b/test/compile/compile.sh
@@ -9,13 +9,18 @@ arr[6]="TEST 6: compile network disabled"
9arr[7]="TEST 7: compile X11 disabled" 9arr[7]="TEST 7: compile X11 disabled"
10arr[8]="TEST 8: compile network restricted" 10arr[8]="TEST 8: compile network restricted"
11arr[9]="TEST 9: compile file transfer disabled" 11arr[9]="TEST 9: compile file transfer disabled"
12 12arr[10]="TEST 10: compile disable whitelist"
13arr[11]="TEST 11: compile disable global config"
14arr[12]="TEST 12: compile apparmor"
15arr[13]="TEST 13: compile busybox"
16arr[14]="TEST 14: compile overlayfs disabled"
17arr[15]="TEST 15: compile apparmor enabled"
13 18
14# remove previous reports and output file 19# remove previous reports and output file
15cleanup() { 20cleanup() {
16 rm -f report* 21 rm -f report*
17 rm -fr firejail 22 rm -fr firejail
18 rm oc* om* 23 rm -f oc* om*
19} 24}
20 25
21print_title() { 26print_title() {
@@ -27,6 +32,7 @@ print_title() {
27 echo "**************************************************" 32 echo "**************************************************"
28} 33}
29 34
35DIST="$1"
30while [ $# -gt 0 ]; do # Until you run out of parameters . . . 36while [ $# -gt 0 ]; do # Until you run out of parameters . . .
31 case "$1" in 37 case "$1" in
32 --clean) 38 --clean)
@@ -42,36 +48,33 @@ while [ $# -gt 0 ]; do # Until you run out of parameters . . .
42done 48done
43 49
44cleanup 50cleanup
45# enable sudo
46sudo ls -al
47 51
48 52
49#***************************************************************** 53#*****************************************************************
50# TEST 1 54# TEST 1
51#***************************************************************** 55#*****************************************************************
52# - checkout source code 56# - checkout source code
53# - check compilation
54# - install
55#***************************************************************** 57#*****************************************************************
56print_title "${arr[1]}" 58print_title "${arr[1]}"
57git clone https://github.com/netblue30/firejail.git 59echo "$DIST"
60tar -xJvf ../../$DIST.tar.xz
61mv $DIST firejail
62
58cd firejail 63cd firejail
59./configure --prefix=/usr --enable-fatal-warnings 2>&1 | tee ../output-configure 64./configure --prefix=/usr --enable-fatal-warnings 2>&1 | tee ../output-configure
60make -j4 2>&1 | tee ../output-make 65make -j4 2>&1 | tee ../output-make
61sudo make install 2>&1 | tee ../output-install
62cd .. 66cd ..
63grep Warning output-configure output-make output-install > ./report-test1 67grep Warning output-configure output-make > ./report-test1
64grep Error output-configure output-make output-install >> ./report-test1 68grep Error output-configure output-make >> ./report-test1
65cp output-configure oc1 69cp output-configure oc1
66cp output-make om1 70cp output-make om1
67rm output-configure output-make output-install 71rm output-configure output-make
68 72
69 73
70#***************************************************************** 74#*****************************************************************
71# TEST 2 75# TEST 2
72#***************************************************************** 76#*****************************************************************
73# - disable seccomp configuration 77# - disable seccomp configuration
74# - check compilation
75#***************************************************************** 78#*****************************************************************
76print_title "${arr[2]}" 79print_title "${arr[2]}"
77# seccomp 80# seccomp
@@ -90,7 +93,6 @@ rm output-configure output-make
90# TEST 3 93# TEST 3
91#***************************************************************** 94#*****************************************************************
92# - disable chroot configuration 95# - disable chroot configuration
93# - check compilation
94#***************************************************************** 96#*****************************************************************
95print_title "${arr[3]}" 97print_title "${arr[3]}"
96# seccomp 98# seccomp
@@ -109,7 +111,6 @@ rm output-configure output-make
109# TEST 4 111# TEST 4
110#***************************************************************** 112#*****************************************************************
111# - disable bind configuration 113# - disable bind configuration
112# - check compilation
113#***************************************************************** 114#*****************************************************************
114print_title "${arr[4]}" 115print_title "${arr[4]}"
115# seccomp 116# seccomp
@@ -128,7 +129,6 @@ rm output-configure output-make
128# TEST 5 129# TEST 5
129#***************************************************************** 130#*****************************************************************
130# - disable user namespace configuration 131# - disable user namespace configuration
131# - check compilation
132#***************************************************************** 132#*****************************************************************
133print_title "${arr[5]}" 133print_title "${arr[5]}"
134# seccomp 134# seccomp
@@ -166,7 +166,6 @@ rm output-configure output-make
166# TEST 7 166# TEST 7
167#***************************************************************** 167#*****************************************************************
168# - disable X11 support 168# - disable X11 support
169# - check compilation
170#***************************************************************** 169#*****************************************************************
171print_title "${arr[7]}" 170print_title "${arr[7]}"
172# seccomp 171# seccomp
@@ -186,7 +185,6 @@ rm output-configure output-make
186# TEST 8 185# TEST 8
187#***************************************************************** 186#*****************************************************************
188# - enable network restricted 187# - enable network restricted
189# - check compilation
190#***************************************************************** 188#*****************************************************************
191print_title "${arr[8]}" 189print_title "${arr[8]}"
192# seccomp 190# seccomp
@@ -206,13 +204,12 @@ rm output-configure output-make
206# TEST 9 204# TEST 9
207#***************************************************************** 205#*****************************************************************
208# - disable file transfer 206# - disable file transfer
209# - check compilation
210#***************************************************************** 207#*****************************************************************
211print_title "${arr[9]}" 208print_title "${arr[9]}"
212# seccomp 209# seccomp
213cd firejail 210cd firejail
214make distclean 211make distclean
215./configure --prefix=/usr --enable-network=restricted --enable-fatal-warnings 2>&1 | tee ../output-configure 212./configure --prefix=/usr --disable-file-transfer --enable-fatal-warnings 2>&1 | tee ../output-configure
216make -j4 2>&1 | tee ../output-make 213make -j4 2>&1 | tee ../output-make
217cd .. 214cd ..
218grep Warning output-configure output-make > ./report-test9 215grep Warning output-configure output-make > ./report-test9
@@ -221,6 +218,114 @@ cp output-configure oc9
221cp output-make om9 218cp output-make om9
222rm output-configure output-make 219rm output-configure output-make
223 220
221#*****************************************************************
222# TEST 10
223#*****************************************************************
224# - disable whitelist
225#*****************************************************************
226print_title "${arr[10]}"
227# seccomp
228cd firejail
229make distclean
230./configure --prefix=/usr --disable-whitelist --enable-fatal-warnings 2>&1 | tee ../output-configure
231make -j4 2>&1 | tee ../output-make
232cd ..
233grep Warning output-configure output-make > ./report-test10
234grep Error output-configure output-make >> ./report-test10
235cp output-configure oc10
236cp output-make om10
237rm output-configure output-make
238
239#*****************************************************************
240# TEST 11
241#*****************************************************************
242# - disable global config
243#*****************************************************************
244print_title "${arr[11]}"
245# seccomp
246cd firejail
247make distclean
248./configure --prefix=/usr --disable-globalcfg --enable-fatal-warnings 2>&1 | tee ../output-configure
249make -j4 2>&1 | tee ../output-make
250cd ..
251grep Warning output-configure output-make > ./report-test11
252grep Error output-configure output-make >> ./report-test11
253cp output-configure oc11
254cp output-make om11
255rm output-configure output-make
256
257#*****************************************************************
258# TEST 12
259#*****************************************************************
260# - enable apparmor
261#*****************************************************************
262print_title "${arr[12]}"
263# seccomp
264cd firejail
265make distclean
266./configure --prefix=/usr --enable-apparmor --enable-fatal-warnings 2>&1 | tee ../output-configure
267make -j4 2>&1 | tee ../output-make
268cd ..
269grep Warning output-configure output-make > ./report-test12
270grep Error output-configure output-make >> ./report-test12
271cp output-configure oc12
272cp output-make om12
273rm output-configure output-make
274
275#*****************************************************************
276# TEST 13
277#*****************************************************************
278# - enable busybox workaround
279#*****************************************************************
280print_title "${arr[13]}"
281# seccomp
282cd firejail
283make distclean
284./configure --prefix=/usr --enable-busybox-workaround --enable-fatal-warnings 2>&1 | tee ../output-configure
285make -j4 2>&1 | tee ../output-make
286cd ..
287grep Warning output-configure output-make > ./report-test13
288grep Error output-configure output-make >> ./report-test13
289cp output-configure oc13
290cp output-make om13
291rm output-configure output-make
292
293#*****************************************************************
294# TEST 14
295#*****************************************************************
296# - disable overlayfs
297#*****************************************************************
298print_title "${arr[14]}"
299# seccomp
300cd firejail
301make distclean
302./configure --prefix=/usr --disable-overlayfs --enable-fatal-warnings 2>&1 | tee ../output-configure
303make -j4 2>&1 | tee ../output-make
304cd ..
305grep Warning output-configure output-make > ./report-test14
306grep Error output-configure output-make >> ./report-test14
307cp output-configure oc14
308cp output-make om14
309rm output-configure output-make
310
311#*****************************************************************
312# TEST 15
313#*****************************************************************
314# - enable apparmor
315#*****************************************************************
316print_title "${arr[15]}"
317# seccomp
318cd firejail
319make distclean
320./configure --prefix=/usr --enable-apparmor --enable-fatal-warnings 2>&1 | tee ../output-configure
321make -j4 2>&1 | tee ../output-make
322cd ..
323grep Warning output-configure output-make > ./report-test15
324grep Error output-configure output-make >> ./report-test15
325cp output-configure oc15
326cp output-make om15
327rm output-configure output-make
328
224 329
225#***************************************************************** 330#*****************************************************************
226# PRINT REPORTS 331# PRINT REPORTS
@@ -245,3 +350,10 @@ echo ${arr[6]}
245echo ${arr[7]} 350echo ${arr[7]}
246echo ${arr[8]} 351echo ${arr[8]}
247echo ${arr[9]} 352echo ${arr[9]}
353echo ${arr[10]}
354echo ${arr[11]}
355echo ${arr[12]}
356echo ${arr[13]}
357echo ${arr[14]}
358echo ${arr[15]}
359