Blob Blame History Raw
diff --git a/ctdb.if b/ctdb.if
index 6b7d687..06895f3 100644
--- a/ctdb.if
+++ b/ctdb.if
@@ -55,6 +55,23 @@ interface(`ctdbd_signal',`
         allow $1 ctdbd_t:process signal;
 ')
 
+#######################################
+## <summary>
+##  Allow domain to sigchld ctdbd.
+## </summary>
+## <param name="domain">
+##  <summary>
+##  Domain allowed access.
+##  </summary>
+## </param>
+#
+interface(`ctdbd_sigchld',`
+    gen_require(`
+        type ctdbd_t;
+    ')
+        allow $1 ctdbd_t:process sigchld;
+')
+
 ########################################
 ## <summary>
 ##	Read ctdbd's log files.
diff --git a/glusterd.fc b/glusterd.fc
index 8c8c6c9..52b4110 100644
--- a/glusterd.fc
+++ b/glusterd.fc
@@ -6,13 +6,17 @@
 /usr/sbin/glusterd	--	gen_context(system_u:object_r:glusterd_initrc_exec_t,s0)
 /usr/sbin/glusterfsd	--	gen_context(system_u:object_r:glusterd_exec_t,s0)
 
+/usr/bin/ganesha.nfsd	--	gen_context(system_u:object_r:glusterd_exec_t,s0)
+
 /opt/glusterfs/[^/]+/sbin/glusterfsd	--	gen_context(system_u:object_r:glusterd_exec_t,s0)
 
 /var/lib/glusterd(/.*)?		gen_context(system_u:object_r:glusterd_var_lib_t,s0)
 
 /var/log/glusterfs(/.*)?	gen_context(system_u:object_r:glusterd_log_t,s0)
+/var/log/ganesha.log	--	gen_context(system_u:object_r:glusterd_log_t,s0)
 
 /var/run/gluster(/.*)?	gen_context(system_u:object_r:glusterd_var_run_t,s0)
 /var/run/glusterd(/.*)?	gen_context(system_u:object_r:glusterd_var_run_t,s0)
 /var/run/glusterd.*	--	gen_context(system_u:object_r:glusterd_var_run_t,s0)
 /var/run/glusterd.*	-s	gen_context(system_u:object_r:glusterd_var_run_t,s0)
+/var/run/ganesha.*	--	gen_context(system_u:object_r:glusterd_var_run_t,s0)
diff --git a/glusterd.te b/glusterd.te
index b974353..0c149cd 100644
--- a/glusterd.te
+++ b/glusterd.te
@@ -62,7 +62,7 @@ files_type(glusterd_brick_t)
 allow glusterd_t self:capability { sys_admin sys_resource sys_ptrace dac_override chown dac_read_search fowner fsetid kill setgid setuid net_admin mknod net_raw };
 
 allow glusterd_t self:capability2 block_suspend;
-allow glusterd_t self:process { getcap setcap setrlimit signal_perms setsched getsched };
+allow glusterd_t self:process { getcap setcap setrlimit signal_perms setsched getsched setfscreate};
 allow glusterd_t self:sem create_sem_perms;
 allow glusterd_t self:fifo_file rw_fifo_file_perms;
 allow glusterd_t self:tcp_socket { accept listen };
@@ -81,10 +81,8 @@ files_tmp_filetrans(glusterd_t, glusterd_tmp_t, { dir file sock_file })
 allow glusterd_t glusterd_tmp_t:dir mounton;
 
 manage_dirs_pattern(glusterd_t, glusterd_log_t, glusterd_log_t)
-append_files_pattern(glusterd_t, glusterd_log_t, glusterd_log_t)
-create_files_pattern(glusterd_t, glusterd_log_t, glusterd_log_t)
-setattr_files_pattern(glusterd_t, glusterd_log_t, glusterd_log_t)
-logging_log_filetrans(glusterd_t, glusterd_log_t, dir)
+manage_files_pattern(glusterd_t, glusterd_log_t, glusterd_log_t)
+logging_log_filetrans(glusterd_t, glusterd_log_t, { file dir })
 
 manage_dirs_pattern(glusterd_t, glusterd_var_run_t, glusterd_var_run_t)
 manage_files_pattern(glusterd_t, glusterd_var_run_t, glusterd_var_run_t)
@@ -240,12 +238,21 @@ optional_policy(`
     optional_policy(`
         policykit_dbus_chat(glusterd_t)
     ')
+
+    optional_policy(`
+        unconfined_dbus_chat(glusterd_t)
+    ')
 ')
 
 optional_policy(`
     hostname_exec(glusterd_t)
 ')
 
+
+optional_policy(`
+    kerberos_read_keytab(glusterd_t)
+')
+
 optional_policy(`
     lvm_domtrans(glusterd_t)
 ')
@@ -281,6 +288,7 @@ optional_policy(`
     rpc_domtrans_nfsd(glusterd_t)
     rpc_domtrans_rpcd(glusterd_t)
     rpc_manage_nfs_state_data(glusterd_t)
+	rpcbind_stream_connect(glusterd_t)
 ')
 
 optional_policy(`
diff --git a/openvswitch.te b/openvswitch.te
index 1b606d8..2d00be4 100644
--- a/openvswitch.te
+++ b/openvswitch.te
@@ -32,7 +32,7 @@ systemd_unit_file(openvswitch_unit_file_t)
 # openvswitch local policy
 #
 
-allow openvswitch_t self:capability { net_admin ipc_lock sys_module sys_nice sys_resource };
+allow openvswitch_t self:capability { net_admin ipc_lock sys_module sys_nice sys_rawio sys_resource };
 allow openvswitch_t self:capability2 block_suspend;
 allow openvswitch_t self:process { fork setsched setrlimit signal };
 allow openvswitch_t self:fifo_file rw_fifo_file_perms;
@@ -92,6 +92,8 @@ files_read_kernel_modules(openvswitch_t)
 
 fs_getattr_all_fs(openvswitch_t)
 fs_search_cgroup_dirs(openvswitch_t)
+fs_manage_hugetlbfs_files(openvswitch_t)
+fs_manage_hugetlbfs_dirs(openvswitch_t)
 
 auth_use_nsswitch(openvswitch_t)
 
diff --git a/rhcs.te b/rhcs.te
index 2c7b543..e55c17b 100644
--- a/rhcs.te
+++ b/rhcs.te
@@ -319,6 +319,7 @@ optional_policy(`
     rpc_domtrans_nfsd(cluster_t)
     rpc_domtrans_rpcd(cluster_t)
     rpc_manage_nfs_state_data(cluster_t)
+	rpc_filetrans_var_lib_nfs_content(cluster_t)
 ')
 
 optional_policy(`
diff --git a/rpc.if b/rpc.if
index 50f25de..4f3c2b9 100644
--- a/rpc.if
+++ b/rpc.if
@@ -424,6 +424,24 @@ interface(`rpc_rw_gssd_keys',`
 	allow $1 gssd_t:key { read search setattr view write };
 ')
 
+########################################
+## <summary>
+##	Transition to alsa named content
+## </summary>
+## <param name="domain">
+##	<summary>
+##      Domain allowed access.
+##	</summary>
+## </param>
+#
+interface(`rpc_filetrans_var_lib_nfs_content',`
+	gen_require(`
+		type var_lib_nfs_t;
+	')
+
+	files_var_lib_filetrans($1, var_lib_nfs_t, lnk_file, "nfs")
+')
+
 #######################################
 ## <summary>
 ##  All of the rules required to
diff --git a/rpc.te b/rpc.te
index 876a4e7..7f491b0 100644
--- a/rpc.te
+++ b/rpc.te
@@ -21,6 +21,13 @@ gen_tunable(gssd_read_tmp, true)
 ## </desc>
 gen_tunable(nfsd_anon_write, false)
 
+## <desc>
+## <p>
+## Allow rpcd_t  to manage fuse files
+## </p>
+## </desc>
+gen_tunable(rpcd_use_fusefs, false)
+
 attribute rpc_domain;
 
 type exports_t;
@@ -135,6 +142,8 @@ manage_dirs_pattern(rpcd_t, rpcd_var_run_t, rpcd_var_run_t)
 manage_files_pattern(rpcd_t, rpcd_var_run_t, rpcd_var_run_t)
 files_pid_filetrans(rpcd_t, rpcd_var_run_t, { file dir })
 
+read_lnk_files_pattern(rpcd_t, var_lib_nfs_t, var_lib_nfs_t)
+
 # rpc.statd executes sm-notify
 can_exec(rpcd_t, rpcd_exec_t)
 
@@ -171,6 +180,13 @@ miscfiles_read_generic_certs(rpcd_t)
 userdom_signal_unpriv_users(rpcd_t)
 userdom_read_user_home_content_files(rpcd_t)
 
+tunable_policy(`rpcd_use_fusefs',`
+	fs_manage_fusefs_dirs(rpcd_t)
+	fs_manage_fusefs_files(rpcd_t)
+	fs_read_fusefs_symlinks(rpcd_t)
+	fs_getattr_fusefs(rpcd_t)
+')
+
 ifdef(`distro_debian',`
 	term_dontaudit_use_unallocated_ttys(rpcd_t)
 ')
diff --git a/samba.te b/samba.te
index bf7a710..aac4015 100644
--- a/samba.te
+++ b/samba.te
@@ -726,6 +726,7 @@ userdom_use_inherited_user_terminals(smbcontrol_t)
 
 optional_policy(`
 	ctdbd_stream_connect(smbcontrol_t)
+	ctdbd_sigchld(smbcontrol_t)
 ')
 
 ########################################