Artifact Content
Not logged in

Artifact 19233d1d125c671d241ac76ccf7008f5af9e93fa:


#!/usr/bin/expect -f
#
# private-tmp
#

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

#
# N
#
send -- "touch /tmp/test1\r"
sleep 1
send -- "touch /tmp/test2\r"
sleep 1
send -- "firejail --noprofile --private-tmp\r"
expect {
	timeout {puts "TESTING ERROR 0\n";exit}
	"Child process initialized"
}
sleep 1

send -- "ls -al /tmp | wc -l\r"
expect {
	timeout {puts "TESTING ERROR 1.1\n";exit}
	"3"
}


after 100
send -- "exit\r"
sleep 1

#
# O
#
if { $overlay == "overlay" } {
	send -- "touch /tmp/test1\r"
	sleep 1
	send -- "touch /tmp/test2\r"
	sleep 1
	send -- "firejail --noprofile --overlay --private-tmp\r"
	expect {
		timeout {puts "TESTING ERROR 2\n";exit}
		"overlay option is not available" {puts "grsecurity\n"; exit}
		"Child process initialized" {puts "normal system\n"}
	}
	sleep 1
	
	send -- "ls -al /tmp | wc -l\r"
	expect {
		timeout {puts "TESTING ERROR 3.1\n";exit}
		"3"
	}
	

	after 100
	send -- "exit\r"
	sleep 1
}

#
# C
#
if { $chroot == "chroot" } {
	send -- "touch /tmp/test1\r"
	sleep 1
	send -- "touch /tmp/test2\r"
	sleep 1
	send -- "firejail --noprofile --chroot=/tmp/chroot --private-tmp\r"
	expect {
		timeout {puts "TESTING ERROR 4\n";exit}
		"Child process initialized"
	}
	sleep 1
	
	send -- "ls -al /tmp | wc -l\r"
	expect {
		timeout {puts "TESTING ERROR 5.1\n";exit}
		"3"
	}
	
	after 100
	send -- "exit\r"
	sleep 1
}


puts "\nall done\n"