Chris PeBenito 3865d6
## <summary>Miscelaneous files.</summary>
Chris PeBenito e181fe
Chris PeBenito b4cd15
########################################
Chris PeBenito 2ec4c9
## <summary>
Chris PeBenito 6e99a6
##	Read system SSL certificates.
Chris PeBenito 6e99a6
## </summary>
Chris PeBenito 6e99a6
## <param name="domain">
Chris PeBenito 6e99a6
##	Type type of the process performing this action.
Chris PeBenito 6e99a6
## </param>
Chris PeBenito 6e99a6
#
Chris PeBenito 6e99a6
interface(`miscfiles_read_certs',`
Chris PeBenito 6e99a6
	gen_require(`
Chris PeBenito 6e99a6
		type cert_t;
Chris PeBenito 6e99a6
	')
Chris PeBenito 6e99a6
Chris PeBenito 6e99a6
	allow $1 cert_t:dir r_dir_perms;
Chris PeBenito 6e99a6
	allow $1 cert_t:file r_file_perms;
Chris PeBenito 6e99a6
	allow $1 cert_t:file { getattr read };
Chris PeBenito 6e99a6
')
Chris PeBenito 6e99a6
Chris PeBenito 6e99a6
########################################
Chris PeBenito 6e99a6
## <summary>
Chris PeBenito 6e99a6
##	Read fonts.
Chris PeBenito 2ec4c9
## </summary>
Chris PeBenito 2ec4c9
## <param name="domain">
Chris PeBenito 2ec4c9
##	Type type of the process performing this action.
Chris PeBenito 2ec4c9
## </param>
Chris PeBenito ec81ec
#
Chris PeBenito 199895
interface(`miscfiles_read_fonts',`
Chris PeBenito 139520
	gen_require(`
Chris PeBenito 139520
		type fonts_t;
Chris PeBenito 139520
	')
Chris PeBenito 139520
Chris PeBenito 139520
	files_search_usr($1)
Chris PeBenito 139520
	libs_search_lib($1)
Chris PeBenito 0c73cd
Chris PeBenito 0c73cd
	# cjp: fonts can be in either of the above dirs
Chris PeBenito 80048c
	allow $1 fonts_t:dir r_dir_perms;
Chris PeBenito 80048c
	allow $1 fonts_t:file r_file_perms;
Chris PeBenito ec81ec
')
Chris PeBenito ec81ec
Chris PeBenito ec81ec
########################################
Chris PeBenito 2ec4c9
## <summary>
Chris PeBenito f4d7fd
##	Read public files used for file
Chris PeBenito f4d7fd
##	transfer services.
Chris PeBenito f4d7fd
## </summary>
Chris PeBenito f4d7fd
## <param name="domain">
Chris PeBenito f4d7fd
##	Domain allowed access.
Chris PeBenito f4d7fd
## </param>
Chris PeBenito f4d7fd
#
Chris PeBenito f4d7fd
interface(`miscfiles_read_public_files',`
Chris PeBenito f4d7fd
	gen_require(`
Chris PeBenito f4d7fd
		type ftpd_anon_t;
Chris PeBenito f4d7fd
	')
Chris PeBenito f4d7fd
Chris PeBenito f4d7fd
	allow $1 ftpd_anon_t:dir r_dir_perms;
Chris PeBenito f4d7fd
	allow $1 ftpd_anon_t:file r_file_perms;
Chris PeBenito f4d7fd
	allow $1 ftpd_anon_t:lnk_file { getattr read };
Chris PeBenito f4d7fd
')
Chris PeBenito f4d7fd
Chris PeBenito f4d7fd
########################################
Chris PeBenito f4d7fd
## <summary>
Chris PeBenito f4d7fd
##	Create, read, write, and delete public files
Chris PeBenito f4d7fd
##	and directories used for file transfer services.
Chris PeBenito f4d7fd
## </summary>
Chris PeBenito f4d7fd
## <param name="domain">
Chris PeBenito f4d7fd
##	Domain allowed access.
Chris PeBenito f4d7fd
## </param>
Chris PeBenito f4d7fd
#
Chris PeBenito f4d7fd
interface(`miscfiles_manage_public_files',`
Chris PeBenito f4d7fd
	gen_require(`
Chris PeBenito f4d7fd
		type ftpd_anon_rw_t;
Chris PeBenito f4d7fd
	')
Chris PeBenito f4d7fd
Chris PeBenito f4d7fd
	allow $1 ftpd_anon_rw_t:dir create_dir_perms;
Chris PeBenito f4d7fd
	allow $1 ftpd_anon_rw_t:file create_file_perms;
Chris PeBenito f4d7fd
	allow $1 ftpd_anon_rw_t:lnk_file create_lnk_perms;
Chris PeBenito f4d7fd
')
Chris PeBenito f4d7fd
Chris PeBenito f4d7fd
########################################
Chris PeBenito f4d7fd
## <summary>
Chris PeBenito 2ec4c9
##	Allow process to read localization info
Chris PeBenito 2ec4c9
## </summary>
Chris PeBenito 2ec4c9
## <param name="domain">
Chris PeBenito 2ec4c9
##	Type type of the process performing this action.
Chris PeBenito 2ec4c9
## </param>
Chris PeBenito b4cd15
#
Chris PeBenito 199895
interface(`miscfiles_read_localization',`
Chris PeBenito 139520
	gen_require(`
Chris PeBenito 139520
		type locale_t;
Chris PeBenito 139520
	')
Chris PeBenito 139520
Chris PeBenito 139520
	files_search_etc($1)
Chris PeBenito 0c73cd
	# FIXME: $1 read etc_t:lnk_file here
Chris PeBenito 139520
	files_search_usr($1)
Chris PeBenito 80048c
	allow $1 locale_t:dir r_dir_perms;
Chris PeBenito 80048c
	allow $1 locale_t:lnk_file r_file_perms;
Chris PeBenito 80048c
	allow $1 locale_t:file r_file_perms;
Chris PeBenito 118186
Chris PeBenito 0c73cd
	# why?
Chris PeBenito c9428d
	libs_read_lib($1)
Chris PeBenito b4cd15
')
Chris PeBenito b4cd15
Chris PeBenito 0fef98
########################################
Chris PeBenito 2ec4c9
## <summary>
Chris PeBenito 2ec4c9
##	Allow process to read legacy time localization info
Chris PeBenito 2ec4c9
## </summary>
Chris PeBenito 2ec4c9
## <param name="domain">
Chris PeBenito 2ec4c9
##	Type type of the process performing this action.
Chris PeBenito 2ec4c9
## </param>
Chris PeBenito 0fef98
#
Chris PeBenito 199895
interface(`miscfiles_legacy_read_localization',`
Chris PeBenito 139520
	gen_require(`
Chris PeBenito 139520
		type locale_t;
Chris PeBenito 139520
	')
Chris PeBenito 0c73cd
Chris PeBenito 0c73cd
	miscfiles_read_localization($1)
Chris PeBenito 0c73cd
	allow $1 locale_t:file execute;
Chris PeBenito 0fef98
')
Chris PeBenito 0fef98
Chris PeBenito 24280a
########################################
Chris PeBenito 2ec4c9
## <summary>
Chris PeBenito cf6a7d
##	Read man pages
Chris PeBenito 2ec4c9
## </summary>
Chris PeBenito 2ec4c9
## <param name="domain">
Chris PeBenito cf6a7d
##	Domain allowed access.
Chris PeBenito 2ec4c9
## </param>
Chris PeBenito 24280a
#
Chris PeBenito 199895
interface(`miscfiles_read_man_pages',`
Chris PeBenito 139520
	gen_require(`
Chris PeBenito 139520
		type man_t;
Chris PeBenito 139520
	')
Chris PeBenito 139520
Chris PeBenito 139520
	files_search_usr($1)
Chris PeBenito 80048c
	allow $1 man_t:dir r_dir_perms;
Chris PeBenito 80048c
	allow $1 man_t:file r_file_perms;
Chris PeBenito 80048c
	allow $1 man_t:lnk_file r_file_perms;
Chris PeBenito 24280a
')
Chris PeBenito 24280a
Chris PeBenito 2ec4c9
########################################
Chris PeBenito cf6a7d
## <summary>
Chris PeBenito cf6a7d
##	Delete man pages
Chris PeBenito cf6a7d
## </summary>
Chris PeBenito cf6a7d
## <param name="domain">
Chris PeBenito cf6a7d
##	Domain allowed access.
Chris PeBenito cf6a7d
## </param>
Chris PeBenito cf6a7d
# cjp: added for tmpreaper
Chris PeBenito cf6a7d
#
Chris PeBenito cf6a7d
interface(`miscfiles_delete_man_pages',`
Chris PeBenito cf6a7d
	gen_require(`
Chris PeBenito cf6a7d
		type man_t;
Chris PeBenito cf6a7d
	')
Chris PeBenito cf6a7d
Chris PeBenito cf6a7d
	files_search_usr($1)
Chris PeBenito cf6a7d
	allow $1 man_t:dir { setattr rw_dir_perms rmdir };
Chris PeBenito cf6a7d
	allow $1 man_t:file { getattr unlink };
Chris PeBenito cf6a7d
	allow $1 man_t:lnk_file { getattr unlink };
Chris PeBenito cf6a7d
')
Chris PeBenito cf6a7d
Chris PeBenito cf6a7d
########################################
Chris PeBenito cf6a7d
## <summary>
Chris PeBenito cf6a7d
##	Create, read, write, and delete man pages
Chris PeBenito cf6a7d
## </summary>
Chris PeBenito cf6a7d
## <param name="domain">
Chris PeBenito cf6a7d
##	Domain allowed access.
Chris PeBenito cf6a7d
## </param>
Chris PeBenito cf6a7d
#
Chris PeBenito cf6a7d
interface(`miscfiles_manage_man_pages',`
Chris PeBenito cf6a7d
	gen_require(`
Chris PeBenito cf6a7d
		type man_t;
Chris PeBenito cf6a7d
	')
Chris PeBenito cf6a7d
Chris PeBenito cf6a7d
	files_search_usr($1)
Chris PeBenito cf6a7d
	allow $1 man_t:dir create_dir_perms;
Chris PeBenito cf6a7d
	allow $1 man_t:file create_file_perms;
Chris PeBenito cf6a7d
	allow $1 man_t:lnk_file r_file_perms;
Chris PeBenito cf6a7d
')
Chris PeBenito cf6a7d
Chris PeBenito cf6a7d
########################################
Chris PeBenito 2ec4c9
## <summary>
Chris PeBenito 2ec4c9
##	Read TeX data
Chris PeBenito 2ec4c9
## </summary>
Chris PeBenito 2ec4c9
## <param name="domain">
Chris PeBenito 2ec4c9
##	Type type of the process performing this action.
Chris PeBenito 2ec4c9
## </param>
Chris PeBenito 2ec4c9
#
Chris PeBenito 2ec4c9
interface(`miscfiles_read_tetex_data',`
Chris PeBenito 2ec4c9
	gen_require(`
Chris PeBenito 2ec4c9
		type tetex_data_t;
Chris PeBenito 2ec4c9
	')
Chris PeBenito 2ec4c9
Chris PeBenito 2ec4c9
	files_search_var($1)
Chris PeBenito 2ec4c9
	files_search_var_lib($1)
Chris PeBenito 2ec4c9
Chris PeBenito 2ec4c9
	# cjp: TeX data can be in either of the above dirs
Chris PeBenito 2ec4c9
	allow $1 tetex_data_t:dir r_dir_perms;
Chris PeBenito 2ec4c9
	allow $1 tetex_data_t:file r_file_perms;
Chris PeBenito 2ec4c9
	allow $1 tetex_data_t:lnk_file r_file_perms;
Chris PeBenito 2ec4c9
')
Chris PeBenito 2ec4c9
Chris PeBenito 2ec4c9
########################################
Chris PeBenito 2ec4c9
## <summary>
Chris PeBenito 2ec4c9
##	Execute TeX data programs in the caller domain.
Chris PeBenito 2ec4c9
## </summary>
Chris PeBenito 2ec4c9
## <param name="domain">
Chris PeBenito 2ec4c9
##	Type type of the process performing this action.
Chris PeBenito 2ec4c9
## </param>
Chris PeBenito 2ec4c9
#
Chris PeBenito 2ec4c9
interface(`miscfiles_exec_tetex_data',`
Chris PeBenito 2ec4c9
	gen_require(`
Chris PeBenito 2ec4c9
		type fonts_t;
Chris PeBenito 2ec4c9
	')
Chris PeBenito 2ec4c9
Chris PeBenito 2ec4c9
	files_search_var($1)
Chris PeBenito 2ec4c9
	files_search_var_lib($1)
Chris PeBenito 2ec4c9
Chris PeBenito 2ec4c9
	# cjp: TeX data can be in either of the above dirs
Chris PeBenito 2ec4c9
	allow $1 tetex_data_t:dir r_dir_perms;
Chris PeBenito 2ec4c9
	can_exec($1,tetex_data_t)
Chris PeBenito 2ec4c9
')