Chris PeBenito 0fbfa5
#DESC Bluetooth 
Chris PeBenito 0fbfa5
#
Chris PeBenito 0fbfa5
# Authors:  Dan Walsh
Chris PeBenito 0fbfa5
# RH-Packages: Bluetooth
Chris PeBenito 0fbfa5
#
Chris PeBenito 0fbfa5
Chris PeBenito 0fbfa5
#################################
Chris PeBenito 0fbfa5
#
Chris PeBenito 0fbfa5
# Rules for the bluetooth_t domain.
Chris PeBenito 0fbfa5
#
Chris PeBenito 0fbfa5
daemon_domain(bluetooth)
Chris PeBenito 0fbfa5
Chris PeBenito 0fbfa5
file_type_auto_trans(bluetooth_t, var_run_t, bluetooth_var_run_t, sock_file)
Chris PeBenito 0fbfa5
Chris PeBenito 0fbfa5
tmp_domain(bluetooth)
Chris PeBenito 0fbfa5
Chris PeBenito 0fbfa5
# Use capabilities.
Chris PeBenito 0fbfa5
allow bluetooth_t self:capability { net_admin net_raw sys_tty_config };
Chris PeBenito 0fbfa5
Chris PeBenito 0fbfa5
rw_dir_create_file(bluetooth_t, var_lock_t)
Chris PeBenito 0fbfa5
Chris PeBenito 0fbfa5
# Use the network.
Chris PeBenito 0fbfa5
can_network_server(bluetooth_t)
Chris PeBenito 0fbfa5
can_ypbind(bluetooth_t)
Chris PeBenito 0fbfa5
ifdef(`dbusd.te', `
Chris PeBenito 0fbfa5
dbusd_client(system, bluetooth)
Chris PeBenito 0fbfa5
allow bluetooth_t system_dbusd_t:dbus send_msg;
Chris PeBenito 0fbfa5
')
Chris PeBenito 0fbfa5
allow bluetooth_t self:socket { create setopt ioctl bind listen };
Chris PeBenito 0fbfa5
allow bluetooth_t self:unix_dgram_socket create_socket_perms;
Chris PeBenito 0fbfa5
allow bluetooth_t self:unix_stream_socket create_stream_socket_perms;
Chris PeBenito 0fbfa5
Chris PeBenito 0fbfa5
dontaudit bluetooth_t sysadm_devpts_t:chr_file { read write };
Chris PeBenito 0fbfa5
Chris PeBenito 0fbfa5
# bluetooth_conf_t is the type of the /etc/bluetooth dir.
Chris PeBenito 0fbfa5
type bluetooth_conf_t, file_type, sysadmfile;
Chris PeBenito 0fbfa5
Chris PeBenito 0fbfa5
# Read /etc/bluetooth
Chris PeBenito 0fbfa5
allow bluetooth_t bluetooth_conf_t:dir search;
Chris PeBenito 0fbfa5
allow bluetooth_t bluetooth_conf_t:file { getattr read ioctl };
Chris PeBenito 0fbfa5
#/usr/sbin/hid2hci causes the following
Chris PeBenito 0fbfa5
allow initrc_t usbfs_t:file { read };