aboutsummaryrefslogtreecommitdiffstats
path: root/test/features/1.2.exp
blob: 56750670dfd9c88b45dde6e9b8a9afbc67a6a0e4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
#!/usr/bin/expect -f
# This file is part of Firejail project
# Copyright (C) 2014-2023 Firejail Authors
# License GPL v2
#
# new /proc
#

set timeout 10
spawn $env(SHELL)
match_max 100000
set overlay [lindex $argv 0]
set chroot [lindex $argv 1]

#
# N
#
send -- "firejail --noprofile\r"
expect {
	timeout {puts "TESTING ERROR 0\n";exit}
	-re "Child process initialized in \[0-9\]+.\[0-9\]+ ms"
}
sleep 1

send -- "cat /proc/mounts | grep proc --color=never\r"
expect {
	timeout {puts "TESTING ERROR 1.1\n";exit}
	"proc /proc proc"
}
expect {
	timeout {puts "TESTING ERROR 1.2\n";exit}
	"proc /proc proc"
}
expect {
	timeout {puts "TESTING ERROR 1.3\n";exit}
	"proc /proc/sys proc"
}
expect {
	timeout {puts "TESTING ERROR 1.4\n";exit}
	"/proc/sysrq-trigger"
}
#expect {
#	timeout {puts "TESTING ERROR 1.5\n";exit}
#	"proc /proc/sys/kernel/hotplug"
#}
expect {
	timeout {puts "TESTING ERROR 1.6\n";exit}
	"/proc/irq"
}
expect {
	timeout {puts "TESTING ERROR 1.7\n";exit}
	"/proc/bus"
}
after 100
send -- "exit\r"
sleep 1


#
# O
#
if { $overlay == "overlay" } {
	send -- "firejail --noprofile --overlay\r"
	expect {
		timeout {puts "TESTING ERROR 2\n";exit}
		"overlay option is not available" {puts "grsecurity\n"; exit}
		-re "Child process initialized in \[0-9\]+.\[0-9\]+ ms" {puts "normal system\n"}
	}
	sleep 1

	send -- "cat /proc/mounts | grep proc --color=never\r"
	expect {
		timeout {puts "TESTING ERROR 3.1\n";exit}
		"proc /proc proc"
	}
	expect {
		timeout {puts "TESTING ERROR 3.3\n";exit}
		"proc /proc/sys proc"
	}
	expect {
		timeout {puts "TESTING ERROR 3.4\n";exit}
		"proc /proc/sysrq-trigger proc"
	}
#	expect {
#		timeout {puts "TESTING ERROR 3.5\n";exit}
#		"proc /proc/sys/kernel/hotplug"
#	}
	expect {
		timeout {puts "TESTING ERROR 3.6\n";exit}
		"proc /proc/irq proc"
	}
	expect {
		timeout {puts "TESTING ERROR 3.7\n";exit}
		"proc /proc/bus proc"
	}
	after 100
	send -- "exit\r"
	sleep 1
}

#
# C
#
if { $chroot == "chroot" } {
	send -- "firejail --noprofile --chroot=/tmp/chroot\r"
	expect {
		timeout {puts "TESTING ERROR 4\n";exit}
		-re "Child process initialized in \[0-9\]+.\[0-9\]+ ms"
	}
	sleep 1

	send -- "cat /proc/mounts | grep proc --color=never\r"
	expect {
		timeout {puts "TESTING ERROR 5.1\n";exit}
		"proc /proc proc"
	}
	expect {
		timeout {puts "TESTING ERROR 5.3\n";exit}
		"proc /proc/sys proc"
	}
#	expect {
#		timeout {puts "TESTING ERROR 5.4\n";exit}
#		"proc /proc/sysrq-trigger proc"
#	}
#	expect {
#		timeout {puts "TESTING ERROR 5.5\n";exit}
#		"proc /proc/sys/kernel/hotplug"
#	}
#	expect {
#		timeout {puts "TESTING ERROR 5.6\n";exit}
#		"proc /proc/irq proc"
#	}
#	expect {
#		timeout {puts "TESTING ERROR 5.7\n";exit}
#		"proc /proc/bus proc"
#	}
	after 100
	send -- "exit\r"
	sleep 1
}


puts "\nall done\n"