1ec3d1a
## <summary> Red Hat Graphical Boot </summary>
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	RHGB stub interface.  No access allowed.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain" unused="true">
1ec3d1a
##	<summary>
1ec3d1a
##	N/A
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_stub',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_t;
1ec3d1a
	')
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	Use a rhgb file descriptor.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##	<summary>
1ec3d1a
##	Domain allowed access.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_use_fds',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_t;
1ec3d1a
	')
1ec3d1a
1ec3d1a
	allow $1 rhgb_t:fd use;
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	Get the process group of rhgb.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##	<summary>
1ec3d1a
##	Domain allowed access.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_getpgid',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_t;
1ec3d1a
	')
1ec3d1a
1ec3d1a
	allow $1 rhgb_t:process getpgid;
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	Send a signal to rhgb.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##	<summary>
1ec3d1a
##	Domain allowed access.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_signal',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_t;
1ec3d1a
	')
1ec3d1a
1ec3d1a
	allow $1 rhgb_t:process signal;
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	Read and write to unix stream sockets.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##	<summary>
1ec3d1a
##	Domain allowed access.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_rw_stream_sockets',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_t;
1ec3d1a
	')
1ec3d1a
1ec3d1a
	allow $1 rhgb_t:unix_stream_socket { read write };
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	Do not audit attempts to read and write
1ec3d1a
##	rhgb unix domain stream sockets.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##	<summary>
1ec3d1a
##	Domain to not audit.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_dontaudit_rw_stream_sockets',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_t;
1ec3d1a
	')
1ec3d1a
1ec3d1a
	dontaudit $1 rhgb_t:unix_stream_socket { read write };
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	Connected to rhgb unix stream socket.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##	<summary>
1ec3d1a
##	Domain allowed access.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_stream_connect',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_t;
1ec3d1a
	')
1ec3d1a
1ec3d1a
	allow $1 rhgb_t:unix_stream_socket connectto;
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	Read and write to rhgb shared memory.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##	<summary>
1ec3d1a
##	Domain allowed access.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_rw_shm',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_t;
1ec3d1a
	')
1ec3d1a
1ec3d1a
	allow $1 rhgb_t:shm rw_shm_perms;
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	Read from and write to the rhgb devpts.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##	<summary>
1ec3d1a
##	Domain allowed access.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_use_ptys',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_devpts_t;
1ec3d1a
	')
1ec3d1a
1ec3d1a
	allow $1 rhgb_devpts_t:chr_file rw_term_perms;
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	dontaudit Read from and write to the rhgb devpts.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##	<summary>
1ec3d1a
##	Domain to not audit.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_dontaudit_use_ptys',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_devpts_t;
1ec3d1a
	')
1ec3d1a
1ec3d1a
	dontaudit $1 rhgb_devpts_t:chr_file rw_term_perms;
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##	Read and write to rhgb temporary file system.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##	<summary>
1ec3d1a
##	Domain allowed access.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`rhgb_rw_tmpfs_files',`
1ec3d1a
	gen_require(`
1ec3d1a
		type rhgb_tmpfs_t;
1ec3d1a
	')
1ec3d1a
1ec3d1a
	fs_search_tmpfs($1)
1ec3d1a
	allow $1 rhgb_tmpfs_t:file rw_file_perms;
1ec3d1a
')