Current Fedora Prelude patch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Subject: [PATCH] refpolicy: services_prelude changes
--text follows this line--
--- nsaserefpolicy/policy/modules/services/prelude.fc	2008-06-11 08:15:44.000000000 -0400
+++ serefpolicy-3.4.2/policy/modules/services/prelude.fc	2008-06-11 14:30:20.000000000 -0400
@@ -9,3 +9,4 @@
 
 /var/spool/prelude-manager(/.*)?	gen_context(system_u:object_r:prelude_spool_t,s0)
 /var/spool/prelude(/.*)?		gen_context(system_u:object_r:prelude_spool_t,s0)
+/etc/rc.d/init.d/prelude-manager	--	gen_context(system_u:object_r:prelude_script_exec_t,s0)
--- nsaserefpolicy/policy/modules/services/prelude.if	2008-06-11 08:15:44.000000000 -0400
+++ serefpolicy-3.4.2/policy/modules/services/prelude.if	2008-06-11 14:32:45.000000000 -0400
@@ -42,7 +42,7 @@
 ## </summary>
 ## <param name="domain">
 ## <summary>
-##	Domain allowed acccess.
+##	Domain allowed access.
 ## </summary>
 ## </param>
 #
@@ -56,6 +56,24 @@
 
 ########################################
 ## <summary>
+##	Execute prelude server in the prelude domain.
+## </summary>
+## <param name="domain">
+##	<summary>
+##	The type of the process performing this action.
+##	</summary>
+## </param>
+#
+interface(`prelude_script_domtrans',`
+	gen_require(`
+		type prelude_script_exec_t;
+	')
+
+	init_script_domtrans_spec($1,prelude_script_exec_t)
+')
+
+########################################
+## <summary>
 ##	All of the rules required to administrate 
 ##	an prelude environment
 ## </summary>
@@ -64,6 +82,16 @@
 ##	Domain allowed access.
 ##	</summary>
 ## </param>
+## <param name="role">
+##	<summary>
+##	The role to be allowed to manage the syslog domain.
+##	</summary>
+## </param>
+## <param name="terminal">
+##	<summary>
+##	The type of the user terminal.
+##	</summary>
+## </param>
 ## <rolecap/>
 #
 interface(`prelude_admin',`
@@ -71,6 +99,7 @@
 		type prelude_t, prelude_spool_t;
 		type prelude_var_run_t, prelude_var_lib_t;
 		type prelude_audisp_t, prelude_audisp_var_run_t;
+		type prelude_script_exec_t;
 	')
 
 	allow $1 prelude_t:process { ptrace signal_perms };
@@ -79,11 +108,14 @@
 	allow $1 prelude_audisp_t:process { ptrace signal_perms };
 	ps_process_pattern($1, prelude_audisp_t)
 
-	manage_files_pattern($1, prelude_spool_t, prelude_spool_t)
-
-	manage_files_pattern($1, prelude_var_lib_t, prelude_var_lib_t)
-
-	manage_files_pattern($1, prelude_var_run_t, prelude_var_run_t)
-
-	manage_files_pattern($1, prelude_audisp_var_run_t, prelude_audisp_var_run_t)
+	# Allow prelude_t to restart the apache service
+	prelude_script_domtrans($1)
+	domain_system_change_exemption($1)
+	role_transition $2 prelude_script_exec_t system_r;
+	allow $2 system_r;
+
+	manage_all_pattern($1, prelude_spool_t)
+	manage_all_pattern($1, prelude_var_lib_t)
+	manage_all_pattern($1, prelude_var_run_t)
+	manage_all_pattern($1, prelude_audisp_var_run_t)
 ')
--- nsaserefpolicy/policy/modules/services/prelude.te	2008-06-11 08:15:44.000000000 -0400
+++ serefpolicy-3.4.2/policy/modules/services/prelude.te	2008-06-11 13:48:53.000000000 -0400
@@ -19,12 +19,18 @@
 type prelude_var_lib_t;
 files_type(prelude_var_lib_t)
 
+type prelude_script_exec_t;
+init_script_type(prelude_script_exec_t)
+
 type prelude_audisp_t;
 type prelude_audisp_exec_t;
 init_daemon_domain(prelude_audisp_t, prelude_audisp_exec_t)
+typealias prelude_audisp_t alias audisp_prelude_t;
+typealias prelude_audisp_exec_t alias audisp_prelude_exec_t;
 
 type prelude_audisp_var_run_t;
 files_pid_file(prelude_audisp_var_run_t)
+typealias prelude_audisp_var_run_t alias audisp_prelude_var_run_t;
 
 ########################################
 #
@@ -56,6 +62,8 @@
 corenet_tcp_sendrecv_all_if(prelude_t)
 corenet_tcp_sendrecv_all_nodes(prelude_t)
 corenet_tcp_bind_all_nodes(prelude_t)
+corenet_tcp_bind_prelude_port(prelude_t)
+corenet_tcp_connect_prelude_port(prelude_t)
 
 dev_read_rand(prelude_t)
 dev_read_urand(prelude_t)
@@ -66,6 +74,8 @@
 files_read_etc_files(prelude_t)
 files_read_usr_files(prelude_t)
 
+fs_rw_anon_inodefs_files(prelude_t)
+
 auth_use_nsswitch(prelude_t)
 
 libs_use_ld_so(prelude_t)
@@ -110,6 +120,7 @@
 corenet_tcp_sendrecv_all_if(prelude_audisp_t)
 corenet_tcp_sendrecv_all_nodes(prelude_audisp_t)
 corenet_tcp_bind_all_nodes(prelude_audisp_t)
+corenet_tcp_connect_prelude_port(prelude_audisp_t)
 
 dev_read_rand(prelude_audisp_t)
 dev_read_urand(prelude_audisp_t)
@@ -126,6 +137,8 @@
 
 miscfiles_read_localization(prelude_audisp_t)
 
+logging_audisp_system_domain(prelude_audisp_t, prelude_audisp_exec_t)
+
 ########################################
 #
 # prewikka_cgi Declarations

Attachment: services_prelude.patch.sig
Description: PGP signature


[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux