diff --git a/policy/modules/contrib/hg.fc b/policy/modules/contrib/hg.fc new file mode 100644 index 0000000000..380ca09b97 --- /dev/null +++ b/policy/modules/contrib/hg.fc @@ -0,0 +1,4 @@ +/var/lib/hg(/.*)? gen_context(system_u:object_r:hg_content_t,s0) +/var/www/hg(/.*)? gen_context(system_u:object_r:hg_content_t,s0) + +/var/www/cgi-bin/hgweb.* -- gen_context(system_u:object_r:hg_script_exec_t,s0) diff --git a/policy/modules/contrib/hg.if b/policy/modules/contrib/hg.if new file mode 100644 index 0000000000..889987bdbd --- /dev/null +++ b/policy/modules/contrib/hg.if @@ -0,0 +1 @@ +## Mercurial source control management diff --git a/policy/modules/contrib/hg.te b/policy/modules/contrib/hg.te new file mode 100644 index 0000000000..544c2f1765 --- /dev/null +++ b/policy/modules/contrib/hg.te @@ -0,0 +1,65 @@ +policy_module(hg, 1.0.0) + +######################################## +# +# Declarations +# + +## +## +## Determine whether Mercurial CGI +## can access cifs file systems. +## +## +gen_tunable(hg_cgi_use_cifs, false) + +## +## +## Determine whether Mercurial CGI +## can access nfs file systems. +## +## +gen_tunable(hg_cgi_use_nfs, false) + +apache_content_template(hg) +apache_content_alias_template(hg, hg) + +######################################## +# +# CGI policy +# + +list_dirs_pattern(hg_script_t, hg_content_t, hg_content_t) +read_files_pattern(hg_script_t, hg_content_t, hg_content_t) + +auth_use_nsswitch(hg_script_t) + +gen_require(` + type httpd_config_t; + type httpd_sys_script_exec_t; +') +list_dirs_pattern(hg_script_t, httpd_config_t, httpd_sys_script_exec_t) + +dev_read_sysfs(hg_script_t) + +kernel_dgram_send(hg_script_t) +abrt_stream_connect(hg_script_t) +optional_policy(` + logging_write_syslog_pid_socket(hg_script_t) +') + +tunable_policy(`hg_cgi_use_cifs',` + fs_getattr_cifs(hg_script_t) + fs_list_cifs(hg_script_t) + fs_read_cifs_files(hg_script_t) +',` + fs_dontaudit_read_cifs_files(hg_script_t) +') + +tunable_policy(`hg_cgi_use_nfs',` + fs_getattr_nfs(hg_script_t) + fs_list_nfs(hg_script_t) + fs_read_nfs_files(hg_script_t) +',` + fs_dontaudit_read_nfs_files(hg_script_t) +')
+## Determine whether Mercurial CGI +## can access cifs file systems. +##
+## Determine whether Mercurial CGI +## can access nfs file systems. +##