#DESC Gatekeeper - OpenH.323 voice over IP gate-keeper
#
# Author: Russell Coker <russell@coker.com.au>
# X-Debian-Packages: opengate openh323gk
#
#################################
#
# Rules for the gatekeeper_t domain.
#
# gatekeeper_exec_t is the type of the gk executable.
#
daemon_domain(gatekeeper)
# for SSP
allow gatekeeper_t urandom_device_t:chr_file read;
type gatekeeper_port_t, port_type;
etc_domain(gatekeeper)
typealias gatekeeper_etc_t alias etc_gatekeeper_t;
allow gatekeeper_t gatekeeper_etc_t:lnk_file { getattr read };
logdir_domain(gatekeeper)
# Use the network.
can_network_server(gatekeeper_t)
can_ypbind(gatekeeper_t)
allow gatekeeper_t gatekeeper_port_t:{ udp_socket tcp_socket } name_bind;
allow gatekeeper_t self:unix_stream_socket create_socket_perms;
# for stupid symlinks
tmp_domain(gatekeeper)
# pthreads wants to know the kernel version
read_sysctl(gatekeeper_t)
allow gatekeeper_t etc_t:file { getattr read };
allow gatekeeper_t etc_t:dir r_dir_perms;
allow gatekeeper_t sbin_t:dir r_dir_perms;
allow gatekeeper_t self:process setsched;
allow gatekeeper_t self:fifo_file rw_file_perms;
allow gatekeeper_t proc_t:file read;
# for local users to run VOIP software
can_udp_send(userdomain, gatekeeper_t)
can_udp_send(gatekeeper_t, userdomain)
can_tcp_connect(gatekeeper_t, userdomain)
# this is crap, gk wants to create symlinks in /etc every time it starts and
# remove them when it exits.
#allow gatekeeper_t etc_t:dir rw_dir_perms;