Chris PeBenito d83fdad
## <summary>Berkeley internet name domain DNS server.</summary>
Chris PeBenito d83fdad
Chris PeBenito d83fdad
########################################
Chris PeBenito d83fdad
## <summary>
Chris PeBenito d83fdad
##	Execute ndc in the ndc domain.
Chris PeBenito d83fdad
## </summary>
Chris PeBenito d83fdad
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito fe9d17f
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito d83fdad
## </param>
Chris PeBenito d83fdad
#
Chris PeBenito d83fdad
interface(`bind_domtrans_ndc',`
Chris PeBenito d83fdad
	gen_require(`
Chris PeBenito d83fdad
		type ndc_t, ndc_exec_t;
Chris PeBenito d83fdad
	')
Chris PeBenito d83fdad
Chris PeBenito d83fdad
	domain_auto_trans($1,ndc_exec_t,ndc_t)
Chris PeBenito d83fdad
Chris PeBenito d83fdad
	allow $1 ndc_t:fd use;
Chris PeBenito d83fdad
	allow ndc_t $1:fd use;
Chris PeBenito d83fdad
	allow ndc_t $1:fifo_file rw_file_perms;
Chris PeBenito d83fdad
	allow ndc_t $1:process sigchld;
Chris PeBenito d83fdad
')
Chris PeBenito d83fdad
Chris PeBenito d83fdad
########################################
Chris PeBenito d83fdad
## <summary>
Chris PeBenito 6f81e1d
##	Send generic signals to BIND.
Chris PeBenito 6f81e1d
## </summary>
Chris PeBenito 6f81e1d
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito 6f81e1d
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito 6f81e1d
## </param>
Chris PeBenito 6f81e1d
#
Chris PeBenito 6f81e1d
interface(`bind_signal',`
Chris PeBenito 6f81e1d
	gen_require(`
Chris PeBenito 6f81e1d
		type named_t;
Chris PeBenito 6f81e1d
	')
Chris PeBenito 6f81e1d
Chris PeBenito 6f81e1d
	allow $1 named_t:process signal;
Chris PeBenito 6f81e1d
')
Chris PeBenito 6f81e1d
Chris PeBenito 6f81e1d
########################################
Chris PeBenito 6f81e1d
## <summary>
Chris PeBenito d83fdad
##	Execute ndc in the ndc domain, and
Chris PeBenito d83fdad
##	allow the specified role the ndc domain.
Chris PeBenito d83fdad
## </summary>
Chris PeBenito d83fdad
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito fe9d17f
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito d83fdad
## </param>
Chris PeBenito d83fdad
## <param name="role">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito d83fdad
##	The role to be allowed the bind domain.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito d83fdad
## </param>
Chris PeBenito d83fdad
## <param name="terminal">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito d83fdad
##	The type of the terminal allow the bind domain to use.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito d83fdad
## </param>
Chris PeBenito d83fdad
#
Chris PeBenito d83fdad
interface(`bind_run_ndc',`
Chris PeBenito d83fdad
	gen_require(`
Chris PeBenito d83fdad
		type ndc_t;
Chris PeBenito d83fdad
	')
Chris PeBenito d83fdad
Chris PeBenito d83fdad
	bind_domtrans_ndc($1)
Chris PeBenito d83fdad
	role $2 types ndc_t;
Chris PeBenito d83fdad
	allow ndc_t $3:chr_file rw_term_perms;
Chris PeBenito d83fdad
')
Chris PeBenito d83fdad
Chris PeBenito d83fdad
########################################
Chris PeBenito d83fdad
## <summary>
Chris PeBenito fe9d17f
##	Execute bind in the named domain.
Chris PeBenito fe9d17f
## </summary>
Chris PeBenito fe9d17f
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito fe9d17f
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito fe9d17f
## </param>
Chris PeBenito fe9d17f
#
Chris PeBenito fe9d17f
interface(`bind_domtrans',`
Chris PeBenito fe9d17f
	gen_require(`
Chris PeBenito fe9d17f
		type named_t, named_exec_t;
Chris PeBenito fe9d17f
	')
Chris PeBenito fe9d17f
Chris PeBenito fe9d17f
	domain_auto_trans($1,named_exec_t,named_t)
Chris PeBenito fe9d17f
Chris PeBenito fe9d17f
	allow $1 named_t:fd use;
Chris PeBenito fe9d17f
	allow named_t $1:fd use;
Chris PeBenito fe9d17f
	allow named_t $1:fifo_file rw_file_perms;
Chris PeBenito fe9d17f
	allow named_t $1:process sigchld;
Chris PeBenito fe9d17f
')
Chris PeBenito fe9d17f
Chris PeBenito fe9d17f
########################################
Chris PeBenito fe9d17f
## <summary>
Chris PeBenito 7c8fc35
##	Read DNSSEC keys.
Chris PeBenito 7c8fc35
## </summary>
Chris PeBenito 7c8fc35
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito 7c8fc35
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito 7c8fc35
## </param>
Chris PeBenito 7c8fc35
#
Chris PeBenito 7c8fc35
interface(`bind_read_dnssec_keys',`
Chris PeBenito 7c8fc35
	gen_require(`
Chris PeBenito 7c8fc35
		type named_conf_t, named_zone_t, dnssec_t;
Chris PeBenito 7c8fc35
	')
Chris PeBenito 7c8fc35
Chris PeBenito 7c8fc35
	allow $1 { named_conf_t named_zone_t }:dir search;
Chris PeBenito 7c8fc35
	allow $1 dnssec_t:file { getattr read };
Chris PeBenito 7c8fc35
')
Chris PeBenito 7c8fc35
Chris PeBenito 7c8fc35
########################################
Chris PeBenito 7c8fc35
## <summary>
Chris PeBenito d83fdad
##	Read BIND named configuration files.
Chris PeBenito d83fdad
## </summary>
Chris PeBenito d83fdad
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito d83fdad
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito d83fdad
## </param>
Chris PeBenito d83fdad
#
Chris PeBenito d83fdad
interface(`bind_read_config',`
Chris PeBenito d83fdad
	gen_require(`
Chris PeBenito d83fdad
		type named_conf_t;
Chris PeBenito d83fdad
	')
Chris PeBenito d83fdad
Chris PeBenito d83fdad
	allow $1 named_conf_t:dir search;
Chris PeBenito d83fdad
	allow $1 named_conf_t:file { getattr read };
Chris PeBenito d83fdad
')
Chris PeBenito d83fdad
Chris PeBenito d83fdad
########################################
Chris PeBenito d83fdad
## <summary>
Chris PeBenito d83fdad
##	Write BIND named configuration files.
Chris PeBenito d83fdad
## </summary>
Chris PeBenito d83fdad
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito d83fdad
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito d83fdad
## </param>
Chris PeBenito d83fdad
#
Chris PeBenito d83fdad
interface(`bind_write_config',`
Chris PeBenito d83fdad
	gen_require(`
Chris PeBenito d83fdad
		type named_conf_t;
Chris PeBenito d83fdad
	')
Chris PeBenito d83fdad
Chris PeBenito d83fdad
	allow $1 named_conf_t:dir search;
Chris PeBenito d83fdad
	allow $1 named_conf_t:file { write setattr };
Chris PeBenito d83fdad
')
Chris PeBenito d83fdad
Chris PeBenito d83fdad
########################################
Chris PeBenito d83fdad
## <summary>
Chris PeBenito 98a8ead
##	Create, read, write, and delete
Chris PeBenito 98a8ead
##	BIND configuration directories.
Chris PeBenito 98a8ead
## </summary>
Chris PeBenito 98a8ead
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito 98a8ead
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito 98a8ead
## </param>
Chris PeBenito 98a8ead
#
Chris PeBenito 1815bad
interface(`bind_manage_config_dirs',`
Chris PeBenito 98a8ead
	gen_require(`
Chris PeBenito 98a8ead
		type named_conf_t;
Chris PeBenito 98a8ead
	')
Chris PeBenito 98a8ead
Chris PeBenito 98a8ead
	allow $1 named_conf_t:dir create_dir_perms;
Chris PeBenito 98a8ead
')
Chris PeBenito 98a8ead
Chris PeBenito 98a8ead
########################################
Chris PeBenito 98a8ead
## <summary>
Chris PeBenito a77e652
##	Search the BIND cache directory.
Chris PeBenito a77e652
## </summary>
Chris PeBenito a77e652
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito a77e652
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito a77e652
## </param>
Chris PeBenito a77e652
#
Chris PeBenito a77e652
interface(`bind_search_cache',`
Chris PeBenito a77e652
	gen_require(`
Chris PeBenito a225f98
		type named_conf_t, named_cache_t, named_zone_t;
Chris PeBenito a77e652
	')
Chris PeBenito a77e652
Chris PeBenito a77e652
	files_search_var($1)
Chris PeBenito a225f98
	allow $1 named_conf_t:dir search_dir_perms;
Chris PeBenito a77e652
	allow $1 named_zone_t:dir search_dir_perms;
Chris PeBenito a77e652
	allow $1 named_cache_t:dir search_dir_perms;
Chris PeBenito a77e652
')
Chris PeBenito a77e652
Chris PeBenito a77e652
########################################
Chris PeBenito a77e652
## <summary>
Chris PeBenito 6f81e1d
##	Create, read, write, and delete
Chris PeBenito 6f81e1d
##	BIND cache files.
Chris PeBenito 6f81e1d
## </summary>
Chris PeBenito 6f81e1d
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito 6f81e1d
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito 6f81e1d
## </param>
Chris PeBenito 6f81e1d
#
Chris PeBenito 6f81e1d
interface(`bind_manage_cache',`
Chris PeBenito 6f81e1d
	gen_require(`
Chris PeBenito 6f81e1d
		type named_cache_t, named_zone_t;
Chris PeBenito 6f81e1d
	')
Chris PeBenito 6f81e1d
Chris PeBenito 6f81e1d
	files_search_var($1)
Chris PeBenito 6f81e1d
	allow $1 named_zone_t:dir search_dir_perms;
Chris PeBenito 6f81e1d
	allow $1 named_cache_t:dir rw_dir_perms;
Chris PeBenito 6f81e1d
	allow $1 named_cache_t:file create_file_perms;
Chris PeBenito 6f81e1d
	allow $1 named_cache_t:lnk_file create_lnk_perms;
Chris PeBenito 6f81e1d
')
Chris PeBenito 6f81e1d
Chris PeBenito 6f81e1d
########################################
Chris PeBenito 6f81e1d
## <summary>
Chris PeBenito d83fdad
##	Do not audit attempts to set the attributes
Chris PeBenito d83fdad
##	of the BIND pid directory.
Chris PeBenito d83fdad
## </summary>
Chris PeBenito d83fdad
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito d83fdad
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito d83fdad
## </param>
Chris PeBenito d83fdad
#
Chris PeBenito 1815bad
interface(`bind_setattr_pid_dirs',`
Chris PeBenito d83fdad
	gen_require(`
Chris PeBenito d83fdad
		type named_var_run_t;
Chris PeBenito d83fdad
	')
Chris PeBenito d83fdad
Chris PeBenito d83fdad
	allow $1 named_var_run_t:dir setattr;
Chris PeBenito d83fdad
')
Chris PeBenito bf080a4
Chris PeBenito bf080a4
########################################
Chris PeBenito bf080a4
## <summary>
Chris PeBenito bf080a4
##	Read BIND zone files.
Chris PeBenito bf080a4
## </summary>
Chris PeBenito bf080a4
## <param name="domain">
Chris PeBenito 885b83e
##	<summary>
Chris PeBenito bf080a4
##	Domain allowed access.
Chris PeBenito 885b83e
##	</summary>
Chris PeBenito bf080a4
## </param>
Chris PeBenito bf080a4
#
Chris PeBenito bf080a4
interface(`bind_read_zone',`
Chris PeBenito bf080a4
	gen_require(`
Chris PeBenito bf080a4
		type named_zone_t;
Chris PeBenito bf080a4
	')
Chris PeBenito bf080a4
Chris PeBenito bf080a4
	files_search_var($1)
Chris PeBenito bf080a4
	allow $1 named_zone_t:dir search_dir_perms;
Chris PeBenito bf080a4
	allow $1 named_zone_t:file r_file_perms;
Chris PeBenito bf080a4
')
Chris PeBenito bf080a4