[selinux-policy] - Add lsmd_plugin_t for lsm plugins - Allow dovecot-deliver to search mountpoints - Add labeling for

Miroslav Grepl mgrepl at fedoraproject.org
Tue Nov 26 17:41:21 UTC 2013


commit d61adff49bfaa4e1e993d0883262e357093ce075
Author: Miroslav Grepl <mgrepl at redhat.com>
Date:   Tue Nov 26 18:41:01 2013 +0100

    - Add lsmd_plugin_t for lsm plugins
    - Allow dovecot-deliver to search mountpoints
    - Add labeling for /etc/mdadm.conf
    - Allow opelmi admin providers to dbus chat with init_t
    - Allow sblim domain to read /dev/urandom and /dev/random
    - Add back exec_content boolean for secadm, logadm, auditadm
    - Allow sulogin to getattr on /proc/kcore

 policy-rawhide-base.patch    |  132 +++++++++++++++++++++++------------------
 policy-rawhide-contrib.patch |  121 ++++++++++++++++++++++++++++-----------
 selinux-policy.spec          |   11 +++-
 3 files changed, 172 insertions(+), 92 deletions(-)
---
diff --git a/policy-rawhide-base.patch b/policy-rawhide-base.patch
index 3c1c755..206906e 100644
--- a/policy-rawhide-base.patch
+++ b/policy-rawhide-base.patch
@@ -9405,7 +9405,7 @@ index b876c48..bd5b58c 100644
 +/nsr(/.*)?			gen_context(system_u:object_r:var_t,s0)
 +/nsr/logs(/.*)?			gen_context(system_u:object_r:var_log_t,s0)
 diff --git a/policy/modules/kernel/files.if b/policy/modules/kernel/files.if
-index f962f76..eda85f9 100644
+index f962f76..7d12144 100644
 --- a/policy/modules/kernel/files.if
 +++ b/policy/modules/kernel/files.if
 @@ -19,6 +19,136 @@
@@ -10598,7 +10598,7 @@ index f962f76..eda85f9 100644
  ')
  
  ########################################
-@@ -4217,6 +4848,173 @@ interface(`files_read_world_readable_sockets',`
+@@ -4217,6 +4848,172 @@ interface(`files_read_world_readable_sockets',`
  	allow $1 readable_t:sock_file read_sock_file_perms;
  ')
  
@@ -10767,12 +10767,11 @@ index f962f76..eda85f9 100644
 +    filetrans_pattern($1, var_lib_t, system_db_t, file, "servicelog.db")
 +    filetrans_pattern($1, var_lib_t, system_db_t, file, "servicelog.db-journal")
 +')
-+')
 +
  ########################################
  ## <summary>
  ##	Allow the specified type to associate
-@@ -4239,6 +5037,26 @@ interface(`files_associate_tmp',`
+@@ -4239,6 +5036,26 @@ interface(`files_associate_tmp',`
  
  ########################################
  ## <summary>
@@ -10799,7 +10798,7 @@ index f962f76..eda85f9 100644
  ##	Get the	attributes of the tmp directory (/tmp).
  ## </summary>
  ## <param name="domain">
-@@ -4252,17 +5070,37 @@ interface(`files_getattr_tmp_dirs',`
+@@ -4252,17 +5069,37 @@ interface(`files_getattr_tmp_dirs',`
  		type tmp_t;
  	')
  
@@ -10838,7 +10837,7 @@ index f962f76..eda85f9 100644
  ##	</summary>
  ## </param>
  #
-@@ -4289,6 +5127,7 @@ interface(`files_search_tmp',`
+@@ -4289,6 +5126,7 @@ interface(`files_search_tmp',`
  		type tmp_t;
  	')
  
@@ -10846,7 +10845,7 @@ index f962f76..eda85f9 100644
  	allow $1 tmp_t:dir search_dir_perms;
  ')
  
-@@ -4325,6 +5164,7 @@ interface(`files_list_tmp',`
+@@ -4325,6 +5163,7 @@ interface(`files_list_tmp',`
  		type tmp_t;
  	')
  
@@ -10854,7 +10853,7 @@ index f962f76..eda85f9 100644
  	allow $1 tmp_t:dir list_dir_perms;
  ')
  
-@@ -4334,7 +5174,7 @@ interface(`files_list_tmp',`
+@@ -4334,7 +5173,7 @@ interface(`files_list_tmp',`
  ## </summary>
  ## <param name="domain">
  ##	<summary>
@@ -10863,7 +10862,7 @@ index f962f76..eda85f9 100644
  ##	</summary>
  ## </param>
  #
-@@ -4346,6 +5186,25 @@ interface(`files_dontaudit_list_tmp',`
+@@ -4346,6 +5185,25 @@ interface(`files_dontaudit_list_tmp',`
  	dontaudit $1 tmp_t:dir list_dir_perms;
  ')
  
@@ -10889,7 +10888,7 @@ index f962f76..eda85f9 100644
  ########################################
  ## <summary>
  ##	Remove entries from the tmp directory.
-@@ -4361,6 +5220,7 @@ interface(`files_delete_tmp_dir_entry',`
+@@ -4361,6 +5219,7 @@ interface(`files_delete_tmp_dir_entry',`
  		type tmp_t;
  	')
  
@@ -10897,7 +10896,7 @@ index f962f76..eda85f9 100644
  	allow $1 tmp_t:dir del_entry_dir_perms;
  ')
  
-@@ -4402,6 +5262,32 @@ interface(`files_manage_generic_tmp_dirs',`
+@@ -4402,6 +5261,32 @@ interface(`files_manage_generic_tmp_dirs',`
  
  ########################################
  ## <summary>
@@ -10930,7 +10929,7 @@ index f962f76..eda85f9 100644
  ##	Manage temporary files and directories in /tmp.
  ## </summary>
  ## <param name="domain">
-@@ -4456,7 +5342,7 @@ interface(`files_rw_generic_tmp_sockets',`
+@@ -4456,7 +5341,7 @@ interface(`files_rw_generic_tmp_sockets',`
  
  ########################################
  ## <summary>
@@ -10939,7 +10938,7 @@ index f962f76..eda85f9 100644
  ## </summary>
  ## <param name="domain">
  ##	<summary>
-@@ -4464,17 +5350,17 @@ interface(`files_rw_generic_tmp_sockets',`
+@@ -4464,17 +5349,17 @@ interface(`files_rw_generic_tmp_sockets',`
  ##	</summary>
  ## </param>
  #
@@ -10961,7 +10960,7 @@ index f962f76..eda85f9 100644
  ## </summary>
  ## <param name="domain">
  ##	<summary>
-@@ -4482,33 +5368,123 @@ interface(`files_setattr_all_tmp_dirs',`
+@@ -4482,34 +5367,124 @@ interface(`files_setattr_all_tmp_dirs',`
  ##	</summary>
  ## </param>
  #
@@ -10997,6 +10996,7 @@ index f962f76..eda85f9 100644
  	')
  
 -	allow $1 var_t:dir search_dir_perms;
+-	relabel_dirs_pattern($1, tmpfile, tmpfile)
 +	allow $1 tmpfile:dir { search_dir_perms setattr };
 +')
 +
@@ -11091,10 +11091,11 @@ index f962f76..eda85f9 100644
 +	')
 +
 +	allow $1 var_t:dir search_dir_perms;
- 	relabel_dirs_pattern($1, tmpfile, tmpfile)
++	relabel_dirs_pattern($1, tmpfile, tmpfile)
  ')
  
-@@ -4519,7 +5495,7 @@ interface(`files_relabel_all_tmp_dirs',`
+ ########################################
+@@ -4519,7 +5494,7 @@ interface(`files_relabel_all_tmp_dirs',`
  ## </summary>
  ## <param name="domain">
  ##	<summary>
@@ -11103,7 +11104,7 @@ index f962f76..eda85f9 100644
  ##	</summary>
  ## </param>
  #
-@@ -4579,7 +5555,7 @@ interface(`files_relabel_all_tmp_files',`
+@@ -4579,7 +5554,7 @@ interface(`files_relabel_all_tmp_files',`
  ## </summary>
  ## <param name="domain">
  ##	<summary>
@@ -11112,7 +11113,7 @@ index f962f76..eda85f9 100644
  ##	</summary>
  ## </param>
  #
-@@ -4611,6 +5587,44 @@ interface(`files_read_all_tmp_files',`
+@@ -4611,6 +5586,44 @@ interface(`files_read_all_tmp_files',`
  
  ########################################
  ## <summary>
@@ -11157,7 +11158,7 @@ index f962f76..eda85f9 100644
  ##	Create an object in the tmp directories, with a private
  ##	type using a type transition.
  ## </summary>
-@@ -4664,6 +5678,16 @@ interface(`files_purge_tmp',`
+@@ -4664,6 +5677,16 @@ interface(`files_purge_tmp',`
  	delete_lnk_files_pattern($1, tmpfile, tmpfile)
  	delete_fifo_files_pattern($1, tmpfile, tmpfile)
  	delete_sock_files_pattern($1, tmpfile, tmpfile)
@@ -11174,7 +11175,7 @@ index f962f76..eda85f9 100644
  ')
  
  ########################################
-@@ -5241,6 +6265,24 @@ interface(`files_list_var',`
+@@ -5241,6 +6264,24 @@ interface(`files_list_var',`
  
  ########################################
  ## <summary>
@@ -11199,7 +11200,7 @@ index f962f76..eda85f9 100644
  ##	Create, read, write, and delete directories
  ##	in the /var directory.
  ## </summary>
-@@ -5596,6 +6638,25 @@ interface(`files_read_var_lib_symlinks',`
+@@ -5596,6 +6637,25 @@ interface(`files_read_var_lib_symlinks',`
  	read_lnk_files_pattern($1, { var_t var_lib_t }, var_lib_t)
  ')
  
@@ -11225,7 +11226,7 @@ index f962f76..eda85f9 100644
  # cjp: the next two interfaces really need to be fixed
  # in some way.  They really neeed their own types.
  
-@@ -5641,7 +6702,7 @@ interface(`files_manage_mounttab',`
+@@ -5641,7 +6701,7 @@ interface(`files_manage_mounttab',`
  
  ########################################
  ## <summary>
@@ -11234,7 +11235,7 @@ index f962f76..eda85f9 100644
  ## </summary>
  ## <param name="domain">
  ##	<summary>
-@@ -5649,12 +6710,13 @@ interface(`files_manage_mounttab',`
+@@ -5649,12 +6709,13 @@ interface(`files_manage_mounttab',`
  ##	</summary>
  ## </param>
  #
@@ -11250,7 +11251,7 @@ index f962f76..eda85f9 100644
  ')
  
  ########################################
-@@ -5672,6 +6734,7 @@ interface(`files_search_locks',`
+@@ -5672,6 +6733,7 @@ interface(`files_search_locks',`
  		type var_t, var_lock_t;
  	')
  
@@ -11258,7 +11259,7 @@ index f962f76..eda85f9 100644
  	allow $1 var_lock_t:lnk_file read_lnk_file_perms;
  	search_dirs_pattern($1, var_t, var_lock_t)
  ')
-@@ -5698,7 +6761,26 @@ interface(`files_dontaudit_search_locks',`
+@@ -5698,7 +6760,26 @@ interface(`files_dontaudit_search_locks',`
  
  ########################################
  ## <summary>
@@ -11286,7 +11287,7 @@ index f962f76..eda85f9 100644
  ## </summary>
  ## <param name="domain">
  ##	<summary>
-@@ -5706,13 +6788,12 @@ interface(`files_dontaudit_search_locks',`
+@@ -5706,13 +6787,12 @@ interface(`files_dontaudit_search_locks',`
  ##	</summary>
  ## </param>
  #
@@ -11303,7 +11304,7 @@ index f962f76..eda85f9 100644
  ')
  
  ########################################
-@@ -5731,7 +6812,7 @@ interface(`files_rw_lock_dirs',`
+@@ -5731,7 +6811,7 @@ interface(`files_rw_lock_dirs',`
  		type var_t, var_lock_t;
  	')
  
@@ -11312,7 +11313,7 @@ index f962f76..eda85f9 100644
  	rw_dirs_pattern($1, var_t, var_lock_t)
  ')
  
-@@ -5764,7 +6845,6 @@ interface(`files_create_lock_dirs',`
+@@ -5764,7 +6844,6 @@ interface(`files_create_lock_dirs',`
  ##	Domain allowed access.
  ##	</summary>
  ## </param>
@@ -11320,7 +11321,7 @@ index f962f76..eda85f9 100644
  #
  interface(`files_relabel_all_lock_dirs',`
  	gen_require(`
-@@ -5779,7 +6859,7 @@ interface(`files_relabel_all_lock_dirs',`
+@@ -5779,7 +6858,7 @@ interface(`files_relabel_all_lock_dirs',`
  
  ########################################
  ## <summary>
@@ -11329,7 +11330,7 @@ index f962f76..eda85f9 100644
  ## </summary>
  ## <param name="domain">
  ##	<summary>
-@@ -5787,13 +6867,33 @@ interface(`files_relabel_all_lock_dirs',`
+@@ -5787,13 +6866,33 @@ interface(`files_relabel_all_lock_dirs',`
  ##	</summary>
  ## </param>
  #
@@ -11364,7 +11365,7 @@ index f962f76..eda85f9 100644
  	allow $1 var_lock_t:dir list_dir_perms;
  	getattr_files_pattern($1, var_lock_t, var_lock_t)
  ')
-@@ -5809,13 +6909,12 @@ interface(`files_getattr_generic_locks',`
+@@ -5809,13 +6908,12 @@ interface(`files_getattr_generic_locks',`
  ## </param>
  #
  interface(`files_delete_generic_locks',`
@@ -11382,7 +11383,7 @@ index f962f76..eda85f9 100644
  ')
  
  ########################################
-@@ -5834,9 +6933,7 @@ interface(`files_manage_generic_locks',`
+@@ -5834,9 +6932,7 @@ interface(`files_manage_generic_locks',`
  		type var_t, var_lock_t;
  	')
  
@@ -11393,7 +11394,7 @@ index f962f76..eda85f9 100644
  	manage_files_pattern($1, var_lock_t, var_lock_t)
  ')
  
-@@ -5878,8 +6975,7 @@ interface(`files_read_all_locks',`
+@@ -5878,8 +6974,7 @@ interface(`files_read_all_locks',`
  		type var_t, var_lock_t;
  	')
  
@@ -11403,7 +11404,7 @@ index f962f76..eda85f9 100644
  	allow $1 lockfile:dir list_dir_perms;
  	read_files_pattern($1, lockfile, lockfile)
  	read_lnk_files_pattern($1, lockfile, lockfile)
-@@ -5901,8 +6997,7 @@ interface(`files_manage_all_locks',`
+@@ -5901,8 +6996,7 @@ interface(`files_manage_all_locks',`
  		type var_t, var_lock_t;
  	')
  
@@ -11413,7 +11414,7 @@ index f962f76..eda85f9 100644
  	manage_dirs_pattern($1, lockfile, lockfile)
  	manage_files_pattern($1, lockfile, lockfile)
  	manage_lnk_files_pattern($1, lockfile, lockfile)
-@@ -5939,8 +7034,7 @@ interface(`files_lock_filetrans',`
+@@ -5939,8 +7033,7 @@ interface(`files_lock_filetrans',`
  		type var_t, var_lock_t;
  	')
  
@@ -11423,7 +11424,7 @@ index f962f76..eda85f9 100644
  	filetrans_pattern($1, var_lock_t, $2, $3, $4)
  ')
  
-@@ -5979,7 +7073,7 @@ interface(`files_setattr_pid_dirs',`
+@@ -5979,7 +7072,7 @@ interface(`files_setattr_pid_dirs',`
  		type var_run_t;
  	')
  
@@ -11432,7 +11433,7 @@ index f962f76..eda85f9 100644
  	allow $1 var_run_t:dir setattr;
  ')
  
-@@ -5999,10 +7093,48 @@ interface(`files_search_pids',`
+@@ -5999,10 +7092,48 @@ interface(`files_search_pids',`
  		type var_t, var_run_t;
  	')
  
@@ -11481,7 +11482,7 @@ index f962f76..eda85f9 100644
  ########################################
  ## <summary>
  ##	Do not audit attempts to search
-@@ -6025,6 +7157,25 @@ interface(`files_dontaudit_search_pids',`
+@@ -6025,6 +7156,25 @@ interface(`files_dontaudit_search_pids',`
  
  ########################################
  ## <summary>
@@ -11507,7 +11508,7 @@ index f962f76..eda85f9 100644
  ##	List the contents of the runtime process
  ##	ID directories (/var/run).
  ## </summary>
-@@ -6039,7 +7190,7 @@ interface(`files_list_pids',`
+@@ -6039,7 +7189,7 @@ interface(`files_list_pids',`
  		type var_t, var_run_t;
  	')
  
@@ -11516,7 +11517,7 @@ index f962f76..eda85f9 100644
  	list_dirs_pattern($1, var_t, var_run_t)
  ')
  
-@@ -6058,7 +7209,7 @@ interface(`files_read_generic_pids',`
+@@ -6058,7 +7208,7 @@ interface(`files_read_generic_pids',`
  		type var_t, var_run_t;
  	')
  
@@ -11525,7 +11526,7 @@ index f962f76..eda85f9 100644
  	list_dirs_pattern($1, var_t, var_run_t)
  	read_files_pattern($1, var_run_t, var_run_t)
  ')
-@@ -6078,7 +7229,7 @@ interface(`files_write_generic_pid_pipes',`
+@@ -6078,7 +7228,7 @@ interface(`files_write_generic_pid_pipes',`
  		type var_run_t;
  	')
  
@@ -11534,7 +11535,7 @@ index f962f76..eda85f9 100644
  	allow $1 var_run_t:fifo_file write;
  ')
  
-@@ -6140,7 +7291,6 @@ interface(`files_pid_filetrans',`
+@@ -6140,7 +7290,6 @@ interface(`files_pid_filetrans',`
  	')
  
  	allow $1 var_t:dir search_dir_perms;
@@ -11542,7 +11543,7 @@ index f962f76..eda85f9 100644
  	filetrans_pattern($1, var_run_t, $2, $3, $4)
  ')
  
-@@ -6169,7 +7319,7 @@ interface(`files_pid_filetrans_lock_dir',`
+@@ -6169,7 +7318,7 @@ interface(`files_pid_filetrans_lock_dir',`
  
  ########################################
  ## <summary>
@@ -11551,7 +11552,7 @@ index f962f76..eda85f9 100644
  ## </summary>
  ## <param name="domain">
  ##	<summary>
-@@ -6177,20 +7327,38 @@ interface(`files_pid_filetrans_lock_dir',`
+@@ -6177,19 +7326,37 @@ interface(`files_pid_filetrans_lock_dir',`
  ##	</summary>
  ## </param>
  #
@@ -11571,7 +11572,6 @@ index f962f76..eda85f9 100644
  ########################################
  ## <summary>
 -##	Do not audit attempts to get the attributes of
--##	daemon runtime data files.
 +##	Read and write generic process ID files.
 +## </summary>
 +## <param name="domain">
@@ -11593,11 +11593,10 @@ index f962f76..eda85f9 100644
 +########################################
 +## <summary>
 +##	Do not audit attempts to get the attributes of
-+##	daemon runtime data files.
+ ##	daemon runtime data files.
  ## </summary>
  ## <param name="domain">
- ##	<summary>
-@@ -6249,6 +7417,116 @@ interface(`files_dontaudit_ioctl_all_pids',`
+@@ -6249,6 +7416,116 @@ interface(`files_dontaudit_ioctl_all_pids',`
  
  ########################################
  ## <summary>
@@ -11714,7 +11713,7 @@ index f962f76..eda85f9 100644
  ##	Read all process ID files.
  ## </summary>
  ## <param name="domain">
-@@ -6261,12 +7539,86 @@ interface(`files_dontaudit_ioctl_all_pids',`
+@@ -6261,12 +7538,86 @@ interface(`files_dontaudit_ioctl_all_pids',`
  interface(`files_read_all_pids',`
  	gen_require(`
  		attribute pidfile;
@@ -11803,7 +11802,7 @@ index f962f76..eda85f9 100644
  ')
  
  ########################################
-@@ -6286,8 +7638,8 @@ interface(`files_delete_all_pids',`
+@@ -6286,8 +7637,8 @@ interface(`files_delete_all_pids',`
  		type var_t, var_run_t;
  	')
  
@@ -11813,7 +11812,7 @@ index f962f76..eda85f9 100644
  	allow $1 var_run_t:dir rmdir;
  	allow $1 var_run_t:lnk_file delete_lnk_file_perms;
  	delete_files_pattern($1, pidfile, pidfile)
-@@ -6311,36 +7663,80 @@ interface(`files_delete_all_pid_dirs',`
+@@ -6311,36 +7662,80 @@ interface(`files_delete_all_pid_dirs',`
  		type var_t, var_run_t;
  	')
  
@@ -11905,7 +11904,7 @@ index f962f76..eda85f9 100644
  ## </summary>
  ## <param name="domain">
  ##	<summary>
-@@ -6348,12 +7744,33 @@ interface(`files_manage_all_pids',`
+@@ -6348,12 +7743,33 @@ interface(`files_manage_all_pids',`
  ##	</summary>
  ## </param>
  #
@@ -11942,7 +11941,7 @@ index f962f76..eda85f9 100644
  ')
  
  ########################################
-@@ -6580,3 +7997,492 @@ interface(`files_unconfined',`
+@@ -6580,3 +7996,492 @@ interface(`files_unconfined',`
  
  	typeattribute $1 files_unconfined_type;
  ')
@@ -30728,7 +30727,7 @@ index 0e3c2a9..ea9bd57 100644
 +	userdom_admin_home_dir_filetrans($1, local_login_home_t, file, ".hushlogin")
 +')
 diff --git a/policy/modules/system/locallogin.te b/policy/modules/system/locallogin.te
-index 446fa99..6f7dc10 100644
+index 446fa99..d4b6b3b 100644
 --- a/policy/modules/system/locallogin.te
 +++ b/policy/modules/system/locallogin.te
 @@ -13,9 +13,8 @@ auth_login_entry_type(local_login_t)
@@ -30852,10 +30851,11 @@ index 446fa99..6f7dc10 100644
  	unconfined_shell_domtrans(local_login_t)
  ')
  
-@@ -215,37 +211,56 @@ allow sulogin_t self:sem create_sem_perms;
+@@ -215,37 +211,57 @@ allow sulogin_t self:sem create_sem_perms;
  allow sulogin_t self:msgq create_msgq_perms;
  allow sulogin_t self:msg { send receive };
  
++kernel_getattr_core_if(sulogin_t)
 +kernel_read_crypto_sysctls(sulogin_t)
  kernel_read_system_state(sulogin_t)
  
@@ -30911,7 +30911,7 @@ index 446fa99..6f7dc10 100644
  	init_getpgid(sulogin_t)
  ', `
  	allow sulogin_t self:process setexec;
-@@ -256,11 +271,3 @@ ifdef(`sulogin_no_pam', `
+@@ -256,11 +272,3 @@ ifdef(`sulogin_no_pam', `
  	selinux_compute_relabel_context(sulogin_t)
  	selinux_compute_user_contexts(sulogin_t)
  ')
@@ -39704,7 +39704,7 @@ index db75976..65191bd 100644
 +
 +/var/run/user(/.*)?	gen_context(system_u:object_r:user_tmp_t,s0)
 diff --git a/policy/modules/system/userdomain.if b/policy/modules/system/userdomain.if
-index 9dc60c6..35bd5a5 100644
+index 9dc60c6..dacbee8 100644
 --- a/policy/modules/system/userdomain.if
 +++ b/policy/modules/system/userdomain.if
 @@ -30,9 +30,11 @@ template(`userdom_base_user_template',`
@@ -42543,7 +42543,7 @@ index 9dc60c6..35bd5a5 100644
  ##	Create keys for all user domains.
  ## </summary>
  ## <param name="domain">
-@@ -3435,4 +4322,1630 @@ interface(`userdom_dbus_send_all_users',`
+@@ -3435,4 +4322,1646 @@ interface(`userdom_dbus_send_all_users',`
  	')
  
  	allow $1 userdomain:dbus send_msg;
@@ -44076,6 +44076,22 @@ index 9dc60c6..35bd5a5 100644
 +	ubac_constrained($1_t)
 +
 +	auth_use_nsswitch($1_t)
++
++	ifelse(`$1',`unconfined',`',`
++		gen_tunable($1_exec_content, true)
++
++		tunable_policy(`$1_exec_content',`
++			userdom_exec_user_tmp_files($1_t)
++			userdom_exec_user_home_content_files($1_t)
++		')
++		tunable_policy(`$1_exec_content && use_nfs_home_dirs',`
++                        fs_exec_nfs_files($1_t)
++		')
++
++		tunable_policy(`$1_exec_content && use_samba_home_dirs',`
++			fs_exec_cifs_files($1_t)
++		')
++	')
 +')
 +
 +########################################
diff --git a/policy-rawhide-contrib.patch b/policy-rawhide-contrib.patch
index 576a0e4..45acdf1 100644
--- a/policy-rawhide-contrib.patch
+++ b/policy-rawhide-contrib.patch
@@ -22695,7 +22695,7 @@ index d5badb7..b093baa 100644
 +	admin_pattern($1, dovecot_passwd_t)
  ')
 diff --git a/dovecot.te b/dovecot.te
-index 0aabc7e..ec5bd5d 100644
+index 0aabc7e..71459e8 100644
 --- a/dovecot.te
 +++ b/dovecot.te
 @@ -7,12 +7,10 @@ policy_module(dovecot, 1.16.1)
@@ -23021,7 +23021,7 @@ index 0aabc7e..ec5bd5d 100644
  	mysql_stream_connect(dovecot_auth_t)
  	mysql_read_config(dovecot_auth_t)
  	mysql_tcp_connect(dovecot_auth_t)
-@@ -277,53 +290,78 @@ optional_policy(`
+@@ -277,53 +290,79 @@ optional_policy(`
  ')
  
  optional_policy(`
@@ -23085,6 +23085,7 @@ index 0aabc7e..ec5bd5d 100644
 -logging_search_logs(dovecot_deliver_t)
 +files_search_tmp(dovecot_deliver_t)
 +files_dontaudit_getattr_all_dirs(dovecot_deliver_t)
++files_search_all_mountpoints(dovecot_deliver_t)
  
 -tunable_policy(`use_nfs_home_dirs',`
 -	fs_manage_nfs_dirs(dovecot_deliver_t)
@@ -23119,7 +23120,7 @@ index 0aabc7e..ec5bd5d 100644
  	mta_read_queue(dovecot_deliver_t)
  ')
  
-@@ -332,5 +370,6 @@ optional_policy(`
+@@ -332,5 +371,6 @@ optional_policy(`
  ')
  
  optional_policy(`
@@ -25821,7 +25822,7 @@ index 1e29af1..6c64f55 100644
 +		userdom_user_home_dir_filetrans($1, git_user_content_t, dir, "public_git")
 +')
 diff --git a/git.te b/git.te
-index dc49c71..2609364 100644
+index dc49c71..654dbc5 100644
 --- a/git.te
 +++ b/git.te
 @@ -49,14 +49,6 @@ gen_tunable(git_session_users, false)
@@ -25882,7 +25883,17 @@ index dc49c71..2609364 100644
  corenet_all_recvfrom_unlabeled(git_system_t)
  corenet_all_recvfrom_netlabel(git_system_t)
  corenet_tcp_sendrecv_generic_if(git_system_t)
-@@ -266,12 +261,9 @@ tunable_policy(`git_cgi_use_nfs',`
+@@ -176,6 +171,9 @@ logging_send_syslog_msg(git_system_t)
+ 
+ tunable_policy(`git_system_enable_homedirs',`
+ 	userdom_search_user_home_dirs(git_system_t)
++	list_dirs_pattern(httpd_git_script_t, git_user_content_t, git_user_content_t)
++	read_files_pattern(git_system_t, git_user_content_t, git_user_content_t)
++
+ ')
+ 
+ tunable_policy(`git_system_enable_homedirs && use_nfs_home_dirs',`
+@@ -266,12 +264,9 @@ tunable_policy(`git_cgi_use_nfs',`
  
  allow git_daemon self:fifo_file rw_fifo_file_perms;
  
@@ -37169,12 +37180,14 @@ index 39d3164..4b1b70c 100644
 +	mozilla_plugin_dontaudit_rw_tmp_files(lpr_t)
  ')
 diff --git a/lsm.fc b/lsm.fc
-index c455730..4b40274 100644
+index c455730..6e14667 100644
 --- a/lsm.fc
 +++ b/lsm.fc
-@@ -1,3 +1,5 @@
+@@ -1,3 +1,7 @@
  /usr/bin/lsmd	--	gen_context(system_u:object_r:lsmd_exec_t,s0)
  
++/usr/bin/.*_lsmplugin    --  gen_context(system_u:object_r:lsmd_plugin_exec_t,s0)
++
 +/usr/lib/systemd/system/libstoragemgmt.*		--	gen_context(system_u:object_r:lsmd_unit_file_t,s0)
 +
  /var/run/lsm(/.*)?	gen_context(system_u:object_r:lsmd_var_run_t,s0)
@@ -37289,26 +37302,55 @@ index d314333..da30c5d 100644
 +	')
  ')
 diff --git a/lsm.te b/lsm.te
-index 4ec0eea..bc7d239 100644
+index 4ec0eea..dc93265 100644
 --- a/lsm.te
 +++ b/lsm.te
-@@ -12,6 +12,9 @@ init_daemon_domain(lsmd_t, lsmd_exec_t)
+@@ -12,6 +12,17 @@ init_daemon_domain(lsmd_t, lsmd_exec_t)
  type lsmd_var_run_t;
  files_pid_file(lsmd_var_run_t)
  
 +type lsmd_unit_file_t;
 +systemd_unit_file(lsmd_unit_file_t)
 +
++type lsmd_plugin_t;
++type lsmd_plugin_exec_t;
++application_domain(lsmd_plugin_t, lsmd_plugin_exec_t)
++role system_r types lsmd_plugin_t;
++
++type lsmd_plugin_tmp_t;
++files_tmp_file(lsmd_plugin_tmp_t)
++
  ########################################
  #
  # Local policy
-@@ -26,4 +29,6 @@ manage_lnk_files_pattern(lsmd_t, lsmd_var_run_t, lsmd_var_run_t)
+@@ -26,4 +37,27 @@ manage_lnk_files_pattern(lsmd_t, lsmd_var_run_t, lsmd_var_run_t)
  manage_sock_files_pattern(lsmd_t, lsmd_var_run_t, lsmd_var_run_t)
  files_pid_filetrans(lsmd_t, lsmd_var_run_t, { dir file sock_file })
  
 +corecmd_exec_bin(lsmd_t)
 +
  logging_send_syslog_msg(lsmd_t)
++
++########################################
++#
++# Local lsmd plugin policy
++#
++
++domtrans_pattern(lsmd_t, lsmd_plugin_exec_t, lsmd_plugin_t)
++
++allow lsmd_t lsmd_plugin_exec_t:file read_file_perms;
++
++manage_files_pattern(lsmd_plugin_t, lsmd_plugin_tmp_t, lsmd_plugin_tmp_t)
++manage_dirs_pattern(lsmd_plugin_t, lsmd_plugin_tmp_t, lsmd_plugin_tmp_t)
++files_tmp_filetrans(lsmd_plugin_t, lsmd_plugin_tmp_t, { file dir })
++
++kernel_read_system_state(lsmd_plugin_t)
++
++dev_read_urand(lsmd_plugin_t)
++
++corecmd_exec_bin(lsmd_plugin_t)
++
++sysnet_read_config(lsmd_plugin_t)
 diff --git a/mailman.fc b/mailman.fc
 index 995d0a5..3d40d59 100644
 --- a/mailman.fc
@@ -52958,10 +53000,10 @@ index 0000000..cf03270
 +')
 diff --git a/openshift.te b/openshift.te
 new file mode 100644
-index 0000000..0a6f091
+index 0000000..3c4beaf
 --- /dev/null
 +++ b/openshift.te
-@@ -0,0 +1,556 @@
+@@ -0,0 +1,558 @@
 +policy_module(openshift,1.0.0)
 +
 +gen_require(`
@@ -53104,6 +53146,8 @@ index 0000000..0a6f091
 +allow openshift_domain self:shm create_shm_perms;
 +allow openshift_domain self:sem create_sem_perms;
 +dontaudit openshift_domain self:dir write;
++dontaudit openshift_domain self:rawip_socket create_socket_perms;
++
 +dontaudit openshift_t self:unix_stream_socket recvfrom;
 +dontaudit openshift_domain self:netlink_tcpdiag_socket create;
 +dontaudit openshift_domain self:netlink_route_socket nlmsg_write;
@@ -55322,10 +55366,10 @@ index 1fb1964..f92c71a 100644
 +	virt_rw_svirt_dev(pcscd_t)
 +')
 diff --git a/pegasus.fc b/pegasus.fc
-index dfd46e4..31122bd 100644
+index dfd46e4..87bda41 100644
 --- a/pegasus.fc
 +++ b/pegasus.fc
-@@ -1,15 +1,26 @@
+@@ -1,15 +1,25 @@
 -/etc/Pegasus(/.*)?	gen_context(system_u:object_r:pegasus_conf_t,s0)
 +
 +/etc/Pegasus(/.*)?			gen_context(system_u:object_r:pegasus_conf_t,s0)
@@ -55349,13 +55393,12 @@ index dfd46e4..31122bd 100644
 +/var/lib/openlmi-storage(/.*)?       gen_context(system_u:object_r:pegasus_openlmi_storage_lib_t,s0)
  
 -/usr/share/Pegasus/mof(/.*)?/.*\.mof	gen_context(system_u:object_r:pegasus_mof_t,s0)
-+#openlmi agents
 +/usr/libexec/pegasus/cmpiLMI_Account-cimprovagt --  gen_context(system_u:object_r:pegasus_openlmi_account_exec_t,s0)
 +/usr/libexec/pegasus/cmpiLMI_Fan-cimprovagt     --  gen_context(system_u:object_r:pegasus_openlmi_system_exec_t,s0)
 +/usr/libexec/pegasus/cmpiLMI_LogicalFile-cimprovagt --  gen_context(system_u:object_r:pegasus_openlmi_logicalfile_exec_t,s0)
 +/usr/libexec/pegasus/cmpiLMI_Networking-cimprovagt --  gen_context(system_u:object_r:pegasus_openlmi_system_exec_t,s0)
 +/usr/libexec/pegasus/cmpiLMI_PowerManagement-cimprovagt --  gen_context(system_u:object_r:pegasus_openlmi_system_exec_t,s0)
-+/usr/libexec/pegasus/cmpiLMI_Realmd-cimprovagt      --  gen_context(system_u:object_r:pegasus_openlmi_services_exec_t,s0)
++/usr/libexec/pegasus/cmpiLMI_Realmd-cimprovagt      --  gen_context(system_u:object_r:pegasus_openlmi_admin_exec_t,s0)
 +/usr/libexec/pegasus/cmpiLMI_Service-cimprovagt     --  gen_context(system_u:object_r:pegasus_openlmi_admin_exec_t,s0)
 +
 +
@@ -55461,7 +55504,7 @@ index d2fc677..ded726f 100644
  ')
 +
 diff --git a/pegasus.te b/pegasus.te
-index 608f454..dfb2fb4 100644
+index 608f454..357597f 100644
 --- a/pegasus.te
 +++ b/pegasus.te
 @@ -5,13 +5,12 @@ policy_module(pegasus, 1.9.0)
@@ -55480,7 +55523,7 @@ index 608f454..dfb2fb4 100644
  type pegasus_cache_t;
  files_type(pegasus_cache_t)
  
-@@ -30,20 +29,269 @@ files_type(pegasus_mof_t)
+@@ -30,20 +29,277 @@ files_type(pegasus_mof_t)
  type pegasus_var_run_t;
  files_pid_file(pegasus_var_run_t)
  
@@ -55661,6 +55704,14 @@ index 608f454..dfb2fb4 100644
 +
 +optional_policy(`
 +    dbus_system_bus_client(pegasus_openlmi_admin_t)
++    
++    optional_policy(`
++        init_dbus_chat(pegasus_openlmi_admin_t)
++    ')
++')
++
++optional_policy(`
++    sssd_search_lib(pegasus_openlmi_admin_t)
 +')
 +
 +######################################
@@ -55755,7 +55806,7 @@ index 608f454..dfb2fb4 100644
  allow pegasus_t pegasus_conf_t:lnk_file read_lnk_file_perms;
  
  manage_dirs_pattern(pegasus_t, pegasus_cache_t, pegasus_cache_t)
-@@ -54,22 +302,22 @@ files_var_filetrans(pegasus_t, pegasus_cache_t, { dir file lnk_file })
+@@ -54,22 +310,22 @@ files_var_filetrans(pegasus_t, pegasus_cache_t, { dir file lnk_file })
  manage_dirs_pattern(pegasus_t, pegasus_data_t, pegasus_data_t)
  manage_files_pattern(pegasus_t, pegasus_data_t, pegasus_data_t)
  manage_lnk_files_pattern(pegasus_t, pegasus_data_t, pegasus_data_t)
@@ -55786,7 +55837,7 @@ index 608f454..dfb2fb4 100644
  
  kernel_read_network_state(pegasus_t)
  kernel_read_kernel_sysctls(pegasus_t)
-@@ -80,27 +328,21 @@ kernel_read_net_sysctls(pegasus_t)
+@@ -80,27 +336,21 @@ kernel_read_net_sysctls(pegasus_t)
  kernel_read_xen_state(pegasus_t)
  kernel_write_xen_state(pegasus_t)
  
@@ -55819,7 +55870,7 @@ index 608f454..dfb2fb4 100644
  
  corecmd_exec_bin(pegasus_t)
  corecmd_exec_shell(pegasus_t)
-@@ -114,9 +356,11 @@ files_getattr_all_dirs(pegasus_t)
+@@ -114,9 +364,11 @@ files_getattr_all_dirs(pegasus_t)
  
  auth_use_nsswitch(pegasus_t)
  auth_domtrans_chk_passwd(pegasus_t)
@@ -55831,7 +55882,7 @@ index 608f454..dfb2fb4 100644
  
  files_list_var_lib(pegasus_t)
  files_read_var_lib_files(pegasus_t)
-@@ -128,18 +372,29 @@ init_stream_connect_script(pegasus_t)
+@@ -128,18 +380,29 @@ init_stream_connect_script(pegasus_t)
  logging_send_audit_msgs(pegasus_t)
  logging_send_syslog_msg(pegasus_t)
  
@@ -55867,7 +55918,7 @@ index 608f454..dfb2fb4 100644
  ')
  
  optional_policy(`
-@@ -151,16 +406,24 @@ optional_policy(`
+@@ -151,16 +414,24 @@ optional_policy(`
  ')
  
  optional_policy(`
@@ -55896,7 +55947,7 @@ index 608f454..dfb2fb4 100644
  ')
  
  optional_policy(`
-@@ -168,7 +431,7 @@ optional_policy(`
+@@ -168,7 +439,7 @@ optional_policy(`
  ')
  
  optional_policy(`
@@ -68584,20 +68635,22 @@ index 6d162e4..889c0ed 100644
  userdom_dontaudit_search_user_home_dirs(radvd_t)
  
 diff --git a/raid.fc b/raid.fc
-index 5806046..5578653 100644
+index 5806046..d83ec27 100644
 --- a/raid.fc
 +++ b/raid.fc
-@@ -3,6 +3,9 @@
+@@ -3,6 +3,11 @@
  
  /etc/rc\.d/init\.d/mdmonitor	--	gen_context(system_u:object_r:mdadm_initrc_exec_t,s0)
  
++/etc/mdadm\.conf    --  gen_context(system_u:object_r:mdadm_conf_t,s0)
++
 +/usr/lib/systemd/system/mdmon at .* --  gen_context(system_u:object_r:mdadm_unit_file_t,s0)
 +/usr/lib/systemd/system/mdmonitor.* --  gen_context(system_u:object_r:mdadm_unit_file_t,s0)
 +
  /sbin/iprdump	--	gen_context(system_u:object_r:mdadm_exec_t,s0)
  /sbin/iprinit	--	gen_context(system_u:object_r:mdadm_exec_t,s0)
  /sbin/iprupdate	--	gen_context(system_u:object_r:mdadm_exec_t,s0)
-@@ -16,6 +19,7 @@
+@@ -16,6 +21,7 @@
  /usr/sbin/iprupdate	--	gen_context(system_u:object_r:mdadm_exec_t,s0)
  /usr/sbin/mdadm	--	gen_context(system_u:object_r:mdadm_exec_t,s0)
  /usr/sbin/mdmpd	--	gen_context(system_u:object_r:mdadm_exec_t,s0)
@@ -80894,7 +80947,7 @@ index 98c9e0a..df51942 100644
  	files_search_pids($1)
  	admin_pattern($1, sblim_var_run_t)
 diff --git a/sblim.te b/sblim.te
-index 299756b..947d6b9 100644
+index 299756b..1c63069 100644
 --- a/sblim.te
 +++ b/sblim.te
 @@ -7,13 +7,11 @@ policy_module(sblim, 1.1.0)
@@ -80931,7 +80984,7 @@ index 299756b..947d6b9 100644
  ######################################
  #
  # Common sblim domain local policy
-@@ -32,11 +39,18 @@ manage_dirs_pattern(sblim_domain, sblim_var_run_t, sblim_var_run_t)
+@@ -32,31 +39,36 @@ manage_dirs_pattern(sblim_domain, sblim_var_run_t, sblim_var_run_t)
  manage_files_pattern(sblim_domain, sblim_var_run_t, sblim_var_run_t)
  manage_sock_files_pattern(sblim_domain, sblim_var_run_t, sblim_var_run_t)
  
@@ -80953,9 +81006,11 @@ index 299756b..947d6b9 100644
  corenet_tcp_sendrecv_generic_if(sblim_domain)
  corenet_tcp_sendrecv_generic_node(sblim_domain)
  
-@@ -44,19 +58,15 @@ corenet_tcp_sendrecv_repository_port(sblim_domain)
+ corenet_tcp_sendrecv_repository_port(sblim_domain)
  
  dev_read_sysfs(sblim_domain)
++dev_read_rand(sblim_domain)
++dev_read_urand(sblim_domain)
  
 -logging_send_syslog_msg(sblim_domain)
 -
@@ -80976,7 +81031,7 @@ index 299756b..947d6b9 100644
  allow sblim_gatherd_t self:fifo_file rw_fifo_file_perms;
  allow sblim_gatherd_t self:unix_stream_socket { accept listen };
  
-@@ -84,6 +94,8 @@ storage_raw_read_removable_device(sblim_gatherd_t)
+@@ -84,6 +96,8 @@ storage_raw_read_removable_device(sblim_gatherd_t)
  
  init_read_utmp(sblim_gatherd_t)
  
@@ -80985,7 +81040,7 @@ index 299756b..947d6b9 100644
  sysnet_dns_name_resolve(sblim_gatherd_t)
  
  term_getattr_pty_fs(sblim_gatherd_t)
-@@ -103,8 +115,9 @@ optional_policy(`
+@@ -103,8 +117,9 @@ optional_policy(`
  ')
  
  optional_policy(`
@@ -80996,7 +81051,7 @@ index 299756b..947d6b9 100644
  ')
  
  optional_policy(`
-@@ -117,6 +130,32 @@ optional_policy(`
+@@ -117,6 +132,32 @@ optional_policy(`
  # Reposd local policy
  #
  
diff --git a/selinux-policy.spec b/selinux-policy.spec
index 6ff82f3..3d2ffa6 100644
--- a/selinux-policy.spec
+++ b/selinux-policy.spec
@@ -19,7 +19,7 @@
 Summary: SELinux policy configuration
 Name: selinux-policy
 Version: 3.13.1
-Release: 6%{?dist}
+Release: 7%{?dist}
 License: GPLv2+
 Group: System Environment/Base
 Source: serefpolicy-%{version}.tgz
@@ -575,6 +575,15 @@ SELinux Reference policy mls base module.
 %endif
 
 %changelog
+* Tue Nov 26 2013 Miroslav Grepl<mgrepl at redhat.com> 3.13.1-7
+- Add lsmd_plugin_t for lsm plugins
+- Allow dovecot-deliver to search mountpoints
+- Add labeling for /etc/mdadm.conf
+- Allow opelmi admin providers to dbus chat with init_t
+- Allow sblim domain to read /dev/urandom and /dev/random
+- Add back exec_content boolean for secadm, logadm, auditadm
+- Allow sulogin to getattr on /proc/kcore
+
 * Tue Nov 26 2013 Miroslav Grepl<mgrepl at redhat.com> 3.13.1-6
 - Add filename transition also for servicelog.db-journal
 - Add files_dontaudit_access_check_root()


More information about the scm-commits mailing list