## <summary>File integrity checker.</summary>

########################################
## <summary>
##	Execute tripwire in the tripwire domain.
## </summary>
## <param name="domain">
##	<summary>
##	Domain allowed to transition.
##	</summary>
## </param>
#
interface(`tripwire_domtrans_tripwire',`
	gen_require(`
		type tripwire_t, tripwire_exec_t;
	')

	corecmd_search_bin($1)
	domtrans_pattern($1, tripwire_exec_t, tripwire_t)
')

########################################
## <summary>
##	Execute tripwire in the tripwire
##	domain, and allow the specified
##	role the tripwire domain.
## </summary>
## <param name="domain">
##	<summary>
##	Domain allowed to transition.
##	</summary>
## </param>
## <param name="role">
##	<summary>
##	Role allowed access.
##	</summary>
## </param>
## <rolecap/>
#
interface(`tripwire_run_tripwire',`
	gen_require(`
		attribute_role tripwire_roles;
	')

	tripwire_domtrans_tripwire($1)
	roleattribute $2 tripwire_roles;
')

########################################
## <summary>
##	Execute twadmin in the twadmin domain.
## </summary>
## <param name="domain">
##	<summary>
##	Domain allowed to transition.
##	</summary>
## </param>
#
interface(`tripwire_domtrans_twadmin',`
	gen_require(`
		type twadmin_t, twadmin_exec_t;
	')

	corecmd_search_bin($1)
	domtrans_pattern($1, twadmin_exec_t, twadmin_t)
')

########################################
## <summary>
##	Execute twadmin in the twadmin
##	domain, and allow the specified
##	role the twadmin domain.
## </summary>
## <param name="domain">
##	<summary>
##	Domain allowed to transition.
##	</summary>
## </param>
## <param name="role">
##	<summary>
##	Role allowed access.
##	</summary>
## </param>
## <rolecap/>
#
interface(`tripwire_run_twadmin',`
	gen_require(`
		attribute_role twadmin_roles;
	')

	tripwire_domtrans_twadmin($1)
	roleattribute $2 twadmin_roles;
')

########################################
## <summary>
##	Execute twprint in the twprint domain.
## </summary>
## <param name="domain">
##	<summary>
##	Domain allowed to transition.
##	</summary>
## </param>
#
interface(`tripwire_domtrans_twprint',`
	gen_require(`
		type twprint_t, twprint_exec_t;
	')

	corecmd_search_bin($1)
	domtrans_pattern($1, twprint_exec_t, twprint_t)
')

########################################
## <summary>
##	Execute twprint in the twprint
##	domain, and allow the specified
##	role the twprint domain.
## </summary>
## <param name="domain">
##	<summary>
##	Domain allowed to transition.
##	</summary>
## </param>
## <param name="role">
##	<summary>
##	Role allowed access.
##	</summary>
## </param>
## <rolecap/>
#
interface(`tripwire_run_twprint',`
	gen_require(`
		attribute_role twprint_roles;
	')

	tripwire_domtrans_twprint($1)
	roleattribute $2 twprint_roles;
')

########################################
## <summary>
##	Execute siggen in the siggen domain.
## </summary>
## <param name="domain">
##	<summary>
##	Domain allowed to transition.
##	</summary>
## </param>
#
interface(`tripwire_domtrans_siggen',`
	gen_require(`
		type siggen_t, siggen_exec_t;
	')

	corecmd_search_bin($1)
	domtrans_pattern($1, siggen_exec_t, siggen_t)
')

########################################
## <summary>
##	Execute siggen in the siggen domain,
##	and allow the specified role
##	the siggen domain.
## </summary>
## <param name="domain">
##	<summary>
##	Domain allowed to transition.
##	</summary>
## </param>
## <param name="role">
##	<summary>
##	Role allowed access.
##	</summary>
## </param>
## <rolecap/>
#
interface(`tripwire_run_siggen',`
	gen_require(`
		attribute_role siggen_roles;
	')

	tripwire_domtrans_siggen($1)
	roleattribute $2 siggen_roles;
')
