cont_name=${zsv_name#*.}
cont_dir=/var/containers/$cont_name
cwd=$cont_dir
run=( runc run $cont_name )

runc_signal() {
	cd $cwd || exit $?
	case $zsv_mode in
		(p) exec runc pause $cont_name;;
		([cdx])
			runc resume $cont_name;
			runc kill $cont_name CONT;
			exit 1;;

		#(u) exec runc kill $cont_name ;;
		#(o) exec runc kill $cont_name ;;

		(h) exec runc kill $cont_name HUP;;
		(a) exec runc kill $cont_name ALRM;;
		(i) exec runc kill $cont_name INT;;
		(q) exec runc kill $cont_name QUIT;;
		(1) exec runc kill $cont_name USR1;;
		(2) exec runc kill $cont_name USR2;;
		(t) exec runc kill $cont_name TERM;;
		(k) exec runc kill $cont_name KILL;;
	esac
	exit 2
}

local hdl
for hdl in p c d x h a i q 1 2 t k x; do
	handler[$hdl]=runc_signal
done

# vim: ft=zsh noet ts=4 sts=4 sw=4