Chris PeBenito d4dca5
## <summary>Bluetooth tools and system services.</summary>
Don Miner 9c4fcf
Don Miner 9c4fcf
########################################
Don Miner 9c4fcf
## <summary>
Chris PeBenito 08c22f
##	Execute bluetooth_helper in the bluetooth_helper domain.
Chris PeBenito 08c22f
## </summary>
Chris PeBenito 08c22f
## <param name="domain">
Chris PeBenito 08c22f
##	The type of the process performing this action.
Chris PeBenito 08c22f
## </param>
Chris PeBenito 08c22f
#
Chris PeBenito 08c22f
interface(`bluetooth_domtrans_helper',`
Chris PeBenito 08c22f
	gen_require(`
Chris PeBenito 08c22f
		type bluetooth_helper_t, bluetooth_helper_exec_t;
Chris PeBenito 08c22f
	')
Chris PeBenito 08c22f
Chris PeBenito 08c22f
	domain_auto_trans($1,bluetooth_helper_exec_t,bluetooth_helper_t)
Chris PeBenito 08c22f
Chris PeBenito 08c22f
	allow $1 bluetooth_helper_t:fd use;
Chris PeBenito 08c22f
	allow bluetooth_helper_t $1:fd use;
Chris PeBenito 08c22f
	allow bluetooth_helper_t $1:fifo_file rw_file_perms;
Chris PeBenito 08c22f
	allow bluetooth_helper_t $1:process sigchld;
Chris PeBenito 08c22f
')
Chris PeBenito 08c22f
Chris PeBenito 08c22f
########################################
Chris PeBenito 6f81e1
## <summary>
Chris PeBenito 6f81e1
##	Send and receive messages from
Chris PeBenito 6f81e1
##	bluetooth over dbus.
Chris PeBenito 6f81e1
## </summary>
Chris PeBenito 6f81e1
## <param name="domain">
Chris PeBenito 6f81e1
##	Domain allowed access.
Chris PeBenito 6f81e1
## </param>
Chris PeBenito 6f81e1
#
Chris PeBenito 6f81e1
interface(`bluetooth_dbus_chat',`
Chris PeBenito 6f81e1
	gen_require(`
Chris PeBenito 6f81e1
		type bluetooth_t;
Chris PeBenito 6f81e1
		class dbus send_msg;
Chris PeBenito 6f81e1
	')
Chris PeBenito 6f81e1
Chris PeBenito 6f81e1
	allow $1 bluetooth_t:dbus send_msg;
Chris PeBenito 6f81e1
	allow bluetooth_t $1:dbus send_msg;
Chris PeBenito 6f81e1
')
Chris PeBenito 6f81e1
Chris PeBenito 6f81e1
########################################
Chris PeBenito 08c22f
## <summary>
Chris PeBenito 08c22f
##	Execute bluetooth_helper in the bluetooth_helper domain, and
Chris PeBenito 08c22f
##	allow the specified role the bluetooth_helper domain.
Chris PeBenito 08c22f
## </summary>
Chris PeBenito 08c22f
## <param name="domain">
Chris PeBenito 08c22f
##	The type of the process performing this action.
Chris PeBenito 08c22f
## </param>
Chris PeBenito 08c22f
## <param name="role">
Chris PeBenito 08c22f
##	The role to be allowed the bluetooth_helper domain.
Chris PeBenito 08c22f
## </param>
Chris PeBenito 08c22f
## <param name="terminal">
Chris PeBenito 08c22f
##	The type of the terminal allow the bluetooth_helper domain to use.
Chris PeBenito 08c22f
## </param>
Chris PeBenito 08c22f
#
Chris PeBenito 08c22f
interface(`bluetooth_run_helper',`
Chris PeBenito 08c22f
	gen_require(`
Chris PeBenito 08c22f
		type bluetooth_helper_t;
Chris PeBenito 08c22f
	')
Chris PeBenito 08c22f
Chris PeBenito c5c306
	bluetooth_domtrans_helper($1)
Chris PeBenito 08c22f
	role $2 types bluetooth_helper_t;
Chris PeBenito 08c22f
	allow bluetooth_helper_t $3:chr_file rw_term_perms;
Chris PeBenito 08c22f
')
Chris PeBenito 08c22f
Chris PeBenito 08c22f
########################################
Chris PeBenito 08c22f
## <summary>
Don Miner 9c4fcf
##	Read bluetooth helper files.
Don Miner 9c4fcf
## </summary>
Don Miner 9c4fcf
## <param name="domain">
Don Miner 9c4fcf
##	Domain allowed access.
Don Miner 9c4fcf
## </param>
Don Miner 9c4fcf
#
Don Miner d2c573
interface(`bluetooth_dontaudit_read_helper_files',`
Don Miner 9c4fcf
	gen_require(`
Don Miner 9c4fcf
		type bluetooth_helper_t;
Don Miner 9c4fcf
	')
Don Miner 9c4fcf
Don Miner d2c573
	dontaudit $1 bluetooth_helper_t:dir search;
Don Miner d2c573
	dontaudit $1 bluetooth_helper_t:file { read getattr };
Don Miner 9c4fcf
')