diff --git a/docker-selinux.tgz b/docker-selinux.tgz
index 4062bfa..18e1490 100644
Binary files a/docker-selinux.tgz and b/docker-selinux.tgz differ
diff --git a/policy-rawhide-base.patch b/policy-rawhide-base.patch
index 8fa866d..2a9b586 100644
--- a/policy-rawhide-base.patch
+++ b/policy-rawhide-base.patch
@@ -1403,10 +1403,21 @@ index 216b3d1..064ec83 100644
+
') dnl end enable_mcs
diff --git a/policy/mls b/policy/mls
-index f11e5e2..464a121 100644
+index f11e5e2..c67dbb9 100644
--- a/policy/mls
+++ b/policy/mls
-@@ -156,15 +156,12 @@ mlsconstrain filesystem { mount remount unmount relabelfrom quotamod }
+@@ -70,7 +70,9 @@ mlsconstrain { file lnk_file fifo_file } { create relabelto }
+
+ # new file labels must be dominated by the relabeling subjects clearance
+ mlsconstrain { dir file lnk_file chr_file blk_file sock_file fifo_file } relabelto
+- ( h1 dom h2 );
++ (( h1 dom h2 ) or
++ (( t1 == mlsfilerelabeltoclr ) and ( h1 dom l2 )) or
++ ( t1 == mlsfilewrite ));
+
+ # the file "read" ops (note the check is dominance of the low level)
+ mlsconstrain { dir file lnk_file chr_file blk_file sock_file fifo_file } { read getattr execute }
+@@ -156,15 +158,12 @@ mlsconstrain filesystem { mount remount unmount relabelfrom quotamod }
# these access vectors have no MLS restrictions
# filesystem { transition associate }
@@ -1423,7 +1434,7 @@ index f11e5e2..464a121 100644
( h1 dom h2 );
# the socket "read+write" ops
-@@ -180,7 +177,7 @@ mlsconstrain { socket tcp_socket udp_socket rawip_socket netlink_socket packet_s
+@@ -180,7 +179,7 @@ mlsconstrain { socket tcp_socket udp_socket rawip_socket netlink_socket packet_s
# the socket "read" ops (note the check is dominance of the low level)
@@ -1432,7 +1443,7 @@ index f11e5e2..464a121 100644
(( l1 dom l2 ) or
(( t1 == mlsnetreadtoclr ) and ( h1 dom l2 )) or
( t1 == mlsnetread ));
-@@ -191,11 +188,12 @@ mlsconstrain { netlink_route_socket netlink_firewall_socket netlink_tcpdiag_sock
+@@ -191,11 +190,12 @@ mlsconstrain { netlink_route_socket netlink_firewall_socket netlink_tcpdiag_sock
( t1 == mlsnetread ));
# the socket "write" ops
@@ -1447,7 +1458,7 @@ index f11e5e2..464a121 100644
# used by netlabel to restrict normal domains to same level connections
mlsconstrain { tcp_socket udp_socket rawip_socket } recvfrom
-@@ -252,6 +250,11 @@ mlsconstrain msg receive
+@@ -252,6 +252,11 @@ mlsconstrain msg receive
(( t1 == mlsipcreadtoclr ) and ( h1 dom l2 )) or
( t1 == mlsipcread ));
@@ -1459,7 +1470,7 @@ index f11e5e2..464a121 100644
# the ipc "write" ops (implicit single level)
mlsconstrain { ipc sem msgq shm } { create destroy setattr write unix_write }
(( l1 eq l2 ) or
-@@ -361,9 +364,6 @@ mlsconstrain { peer packet } { recv }
+@@ -361,9 +366,6 @@ mlsconstrain { peer packet } { recv }
(( t1 == mlsnetreadtoclr ) and ( h1 dom l2 )) or
( t1 == mlsnetread ));
@@ -1469,7 +1480,7 @@ index f11e5e2..464a121 100644
#
# MLS policy for the process class
#
-@@ -763,13 +763,14 @@ mlsconstrain context contains
+@@ -763,13 +765,14 @@ mlsconstrain context contains
#
# make sure these database classes are "single level"
@@ -1486,7 +1497,7 @@ index f11e5e2..464a121 100644
( h1 dom h2 );
# the database "read" ops (note the check is dominance of the low level)
-@@ -833,7 +834,7 @@ mlsconstrain { db_tuple } { use select }
+@@ -833,7 +836,7 @@ mlsconstrain { db_tuple } { use select }
( t1 == mlsdbread ) or
( t2 == mlstrustedobject ));
@@ -3041,7 +3052,7 @@ index 99e3903..fa68362 100644
##
##
diff --git a/policy/modules/admin/usermanage.te b/policy/modules/admin/usermanage.te
-index 1d732f1..47af4c3 100644
+index 1d732f1..c2962a5 100644
--- a/policy/modules/admin/usermanage.te
+++ b/policy/modules/admin/usermanage.te
@@ -26,6 +26,7 @@ type chfn_exec_t;
@@ -3270,7 +3281,7 @@ index 1d732f1..47af4c3 100644
userdom_use_unpriv_users_fds(passwd_t)
# make sure that getcon succeeds
userdom_getattr_all_users(passwd_t)
-@@ -352,6 +383,19 @@ userdom_read_user_tmp_files(passwd_t)
+@@ -352,6 +383,20 @@ userdom_read_user_tmp_files(passwd_t)
# user generally runs this from their home directory, so do not audit a search
# on user home dir
userdom_dontaudit_search_user_home_content(passwd_t)
@@ -3279,6 +3290,7 @@ index 1d732f1..47af4c3 100644
+
+# needed by gnome-keyring
+userdom_manage_user_tmp_files(passwd_t)
++userdom_manage_user_tmp_sockets(passwd_t)
+userdom_manage_user_tmp_dirs(passwd_t)
+
+optional_policy(`
@@ -3290,7 +3302,7 @@ index 1d732f1..47af4c3 100644
optional_policy(`
nscd_run(passwd_t, passwd_roles)
-@@ -401,9 +445,10 @@ dev_read_urand(sysadm_passwd_t)
+@@ -401,9 +446,10 @@ dev_read_urand(sysadm_passwd_t)
fs_getattr_xattr_fs(sysadm_passwd_t)
fs_search_auto_mountpoints(sysadm_passwd_t)
@@ -3303,7 +3315,7 @@ index 1d732f1..47af4c3 100644
auth_manage_shadow(sysadm_passwd_t)
auth_relabel_shadow(sysadm_passwd_t)
auth_etc_filetrans_shadow(sysadm_passwd_t)
-@@ -416,7 +461,6 @@ files_read_usr_files(sysadm_passwd_t)
+@@ -416,7 +462,6 @@ files_read_usr_files(sysadm_passwd_t)
domain_use_interactive_fds(sysadm_passwd_t)
@@ -3311,7 +3323,7 @@ index 1d732f1..47af4c3 100644
files_relabel_etc_files(sysadm_passwd_t)
files_read_etc_runtime_files(sysadm_passwd_t)
# for nscd lookups
-@@ -426,12 +470,9 @@ files_dontaudit_search_pids(sysadm_passwd_t)
+@@ -426,12 +471,9 @@ files_dontaudit_search_pids(sysadm_passwd_t)
# correctly without it. Do not audit write denials to utmp.
init_dontaudit_rw_utmp(sysadm_passwd_t)
@@ -3324,7 +3336,7 @@ index 1d732f1..47af4c3 100644
userdom_use_unpriv_users_fds(sysadm_passwd_t)
# user generally runs this from their home directory, so do not audit a search
# on user home dir
-@@ -446,7 +487,8 @@ optional_policy(`
+@@ -446,7 +488,8 @@ optional_policy(`
# Useradd local policy
#
@@ -3334,7 +3346,7 @@ index 1d732f1..47af4c3 100644
dontaudit useradd_t self:capability sys_tty_config;
allow useradd_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execstack execheap };
allow useradd_t self:process setfscreate;
-@@ -461,6 +503,10 @@ allow useradd_t self:unix_stream_socket create_stream_socket_perms;
+@@ -461,6 +504,10 @@ allow useradd_t self:unix_stream_socket create_stream_socket_perms;
allow useradd_t self:unix_dgram_socket sendto;
allow useradd_t self:unix_stream_socket connectto;
@@ -3345,7 +3357,7 @@ index 1d732f1..47af4c3 100644
# for getting the number of groups
kernel_read_kernel_sysctls(useradd_t)
-@@ -468,29 +514,28 @@ corecmd_exec_shell(useradd_t)
+@@ -468,29 +515,28 @@ corecmd_exec_shell(useradd_t)
# Execute /usr/bin/{passwd,chfn,chsh} and /usr/sbin/{useradd,vipw}.
corecmd_exec_bin(useradd_t)
@@ -3385,7 +3397,7 @@ index 1d732f1..47af4c3 100644
auth_run_chk_passwd(useradd_t, useradd_roles)
auth_rw_lastlog(useradd_t)
-@@ -498,6 +543,7 @@ auth_rw_faillog(useradd_t)
+@@ -498,6 +544,7 @@ auth_rw_faillog(useradd_t)
auth_use_nsswitch(useradd_t)
# these may be unnecessary due to the above
# domtrans_chk_passwd() call.
@@ -3393,7 +3405,7 @@ index 1d732f1..47af4c3 100644
auth_manage_shadow(useradd_t)
auth_relabel_shadow(useradd_t)
auth_etc_filetrans_shadow(useradd_t)
-@@ -508,33 +554,32 @@ init_rw_utmp(useradd_t)
+@@ -508,33 +555,32 @@ init_rw_utmp(useradd_t)
logging_send_audit_msgs(useradd_t)
logging_send_syslog_msg(useradd_t)
@@ -3438,7 +3450,7 @@ index 1d732f1..47af4c3 100644
optional_policy(`
apache_manage_all_user_content(useradd_t)
')
-@@ -545,14 +590,27 @@ optional_policy(`
+@@ -545,14 +591,27 @@ optional_policy(`
')
optional_policy(`
@@ -3466,7 +3478,7 @@ index 1d732f1..47af4c3 100644
tunable_policy(`samba_domain_controller',`
samba_append_log(useradd_t)
')
-@@ -562,3 +620,12 @@ optional_policy(`
+@@ -562,3 +621,12 @@ optional_policy(`
rpm_use_fds(useradd_t)
rpm_rw_pipes(useradd_t)
')
@@ -11156,7 +11168,7 @@ index b876c48..03f9342 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..41b68a6 100644
+index f962f76..0a685ac 100644
--- a/policy/modules/kernel/files.if
+++ b/policy/modules/kernel/files.if
@@ -19,6 +19,136 @@
@@ -12401,7 +12413,32 @@ index f962f76..41b68a6 100644
######################################
##
## Read symbolic links in the /boot directory.
-@@ -2645,6 +3276,24 @@ interface(`files_rw_etc_dirs',`
+@@ -2557,6 +3188,24 @@ interface(`files_read_default_pipes',`
+
+ ########################################
+ ##
++## Mounton directories on filesystem /etc.
++##
++##
++##
++## Domain allowed access.
++##
++##
++#
++interface(`files_mounton_etc',`
++ gen_require(`
++ type etc_t;
++ ')
++
++ allow $1 etc_t:dir mounton;
++')
++
++########################################
++##
+ ## Search the contents of /etc directories.
+ ##
+ ##
+@@ -2645,6 +3294,24 @@ interface(`files_rw_etc_dirs',`
allow $1 etc_t:dir rw_dir_perms;
')
@@ -12426,7 +12463,7 @@ index f962f76..41b68a6 100644
##########################################
##
## Manage generic directories in /etc
-@@ -2716,6 +3365,7 @@ interface(`files_read_etc_files',`
+@@ -2716,6 +3383,7 @@ interface(`files_read_etc_files',`
allow $1 etc_t:dir list_dir_perms;
read_files_pattern($1, etc_t, etc_t)
read_lnk_files_pattern($1, etc_t, etc_t)
@@ -12434,7 +12471,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -2724,7 +3374,7 @@ interface(`files_read_etc_files',`
+@@ -2724,7 +3392,7 @@ interface(`files_read_etc_files',`
##
##
##
@@ -12443,7 +12480,7 @@ index f962f76..41b68a6 100644
##
##
#
-@@ -2780,6 +3430,25 @@ interface(`files_manage_etc_files',`
+@@ -2780,6 +3448,25 @@ interface(`files_manage_etc_files',`
########################################
##
@@ -12469,7 +12506,7 @@ index f962f76..41b68a6 100644
## Delete system configuration files in /etc.
##
##
-@@ -2798,6 +3467,24 @@ interface(`files_delete_etc_files',`
+@@ -2798,6 +3485,24 @@ interface(`files_delete_etc_files',`
########################################
##
@@ -12494,7 +12531,7 @@ index f962f76..41b68a6 100644
## Execute generic files in /etc.
##
##
-@@ -2963,24 +3650,6 @@ interface(`files_delete_boot_flag',`
+@@ -2963,26 +3668,8 @@ interface(`files_delete_boot_flag',`
########################################
##
@@ -12516,10 +12553,14 @@ index f962f76..41b68a6 100644
-
-########################################
-##
- ## Read files in /etc that are dynamically
- ## created on boot, such as mtab.
+-## Read files in /etc that are dynamically
+-## created on boot, such as mtab.
++## Read files in /etc that are dynamically
++## created on boot, such as mtab.
##
-@@ -3021,9 +3690,7 @@ interface(`files_read_etc_runtime_files',`
+ ##
+ ##
+@@ -3021,9 +3708,7 @@ interface(`files_read_etc_runtime_files',`
########################################
##
@@ -12530,7 +12571,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -3031,18 +3698,17 @@ interface(`files_read_etc_runtime_files',`
+@@ -3031,18 +3716,17 @@ interface(`files_read_etc_runtime_files',`
##
##
#
@@ -12552,7 +12593,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -3060,6 +3726,26 @@ interface(`files_dontaudit_write_etc_runtime_files',`
+@@ -3060,6 +3744,26 @@ interface(`files_dontaudit_write_etc_runtime_files',`
########################################
##
@@ -12579,7 +12620,7 @@ index f962f76..41b68a6 100644
## Read and write files in /etc that are dynamically
## created on boot, such as mtab.
##
-@@ -3077,6 +3763,7 @@ interface(`files_rw_etc_runtime_files',`
+@@ -3077,6 +3781,7 @@ interface(`files_rw_etc_runtime_files',`
allow $1 etc_t:dir list_dir_perms;
rw_files_pattern($1, etc_t, etc_runtime_t)
@@ -12587,7 +12628,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3098,6 +3785,7 @@ interface(`files_manage_etc_runtime_files',`
+@@ -3098,6 +3803,7 @@ interface(`files_manage_etc_runtime_files',`
')
manage_files_pattern($1, { etc_t etc_runtime_t }, etc_runtime_t)
@@ -12595,7 +12636,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3142,10 +3830,48 @@ interface(`files_etc_filetrans_etc_runtime',`
+@@ -3142,10 +3848,48 @@ interface(`files_etc_filetrans_etc_runtime',`
#
interface(`files_getattr_isid_type_dirs',`
gen_require(`
@@ -12646,7 +12687,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3161,10 +3887,10 @@ interface(`files_getattr_isid_type_dirs',`
+@@ -3161,10 +3905,10 @@ interface(`files_getattr_isid_type_dirs',`
#
interface(`files_dontaudit_search_isid_type_dirs',`
gen_require(`
@@ -12659,7 +12700,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3180,10 +3906,10 @@ interface(`files_dontaudit_search_isid_type_dirs',`
+@@ -3180,10 +3924,10 @@ interface(`files_dontaudit_search_isid_type_dirs',`
#
interface(`files_list_isid_type_dirs',`
gen_require(`
@@ -12672,7 +12713,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3199,10 +3925,10 @@ interface(`files_list_isid_type_dirs',`
+@@ -3199,10 +3943,10 @@ interface(`files_list_isid_type_dirs',`
#
interface(`files_rw_isid_type_dirs',`
gen_require(`
@@ -12685,7 +12726,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3218,10 +3944,66 @@ interface(`files_rw_isid_type_dirs',`
+@@ -3218,10 +3962,66 @@ interface(`files_rw_isid_type_dirs',`
#
interface(`files_delete_isid_type_dirs',`
gen_require(`
@@ -12754,7 +12795,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3237,10 +4019,10 @@ interface(`files_delete_isid_type_dirs',`
+@@ -3237,10 +4037,10 @@ interface(`files_delete_isid_type_dirs',`
#
interface(`files_manage_isid_type_dirs',`
gen_require(`
@@ -12767,7 +12808,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3256,10 +4038,29 @@ interface(`files_manage_isid_type_dirs',`
+@@ -3256,10 +4056,29 @@ interface(`files_manage_isid_type_dirs',`
#
interface(`files_mounton_isid_type_dirs',`
gen_require(`
@@ -12799,7 +12840,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3275,10 +4076,10 @@ interface(`files_mounton_isid_type_dirs',`
+@@ -3275,10 +4094,10 @@ interface(`files_mounton_isid_type_dirs',`
#
interface(`files_read_isid_type_files',`
gen_require(`
@@ -12812,7 +12853,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3294,10 +4095,10 @@ interface(`files_read_isid_type_files',`
+@@ -3294,10 +4113,10 @@ interface(`files_read_isid_type_files',`
#
interface(`files_delete_isid_type_files',`
gen_require(`
@@ -12825,7 +12866,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3313,10 +4114,10 @@ interface(`files_delete_isid_type_files',`
+@@ -3313,10 +4132,10 @@ interface(`files_delete_isid_type_files',`
#
interface(`files_delete_isid_type_symlinks',`
gen_require(`
@@ -12838,7 +12879,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3332,10 +4133,10 @@ interface(`files_delete_isid_type_symlinks',`
+@@ -3332,10 +4151,10 @@ interface(`files_delete_isid_type_symlinks',`
#
interface(`files_delete_isid_type_fifo_files',`
gen_require(`
@@ -12851,7 +12892,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3351,10 +4152,10 @@ interface(`files_delete_isid_type_fifo_files',`
+@@ -3351,10 +4170,10 @@ interface(`files_delete_isid_type_fifo_files',`
#
interface(`files_delete_isid_type_sock_files',`
gen_require(`
@@ -12864,7 +12905,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3370,10 +4171,10 @@ interface(`files_delete_isid_type_sock_files',`
+@@ -3370,10 +4189,10 @@ interface(`files_delete_isid_type_sock_files',`
#
interface(`files_delete_isid_type_blk_files',`
gen_require(`
@@ -12877,7 +12918,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3389,10 +4190,10 @@ interface(`files_delete_isid_type_blk_files',`
+@@ -3389,10 +4208,10 @@ interface(`files_delete_isid_type_blk_files',`
#
interface(`files_dontaudit_write_isid_chr_files',`
gen_require(`
@@ -12890,7 +12931,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3408,10 +4209,10 @@ interface(`files_dontaudit_write_isid_chr_files',`
+@@ -3408,10 +4227,10 @@ interface(`files_dontaudit_write_isid_chr_files',`
#
interface(`files_delete_isid_type_chr_files',`
gen_require(`
@@ -12903,7 +12944,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3427,10 +4228,10 @@ interface(`files_delete_isid_type_chr_files',`
+@@ -3427,10 +4246,10 @@ interface(`files_delete_isid_type_chr_files',`
#
interface(`files_manage_isid_type_files',`
gen_require(`
@@ -12916,7 +12957,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3446,10 +4247,10 @@ interface(`files_manage_isid_type_files',`
+@@ -3446,10 +4265,10 @@ interface(`files_manage_isid_type_files',`
#
interface(`files_manage_isid_type_symlinks',`
gen_require(`
@@ -12929,7 +12970,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3465,10 +4266,29 @@ interface(`files_manage_isid_type_symlinks',`
+@@ -3465,10 +4284,29 @@ interface(`files_manage_isid_type_symlinks',`
#
interface(`files_rw_isid_type_blk_files',`
gen_require(`
@@ -12961,7 +13002,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3484,10 +4304,10 @@ interface(`files_rw_isid_type_blk_files',`
+@@ -3484,10 +4322,10 @@ interface(`files_rw_isid_type_blk_files',`
#
interface(`files_manage_isid_type_blk_files',`
gen_require(`
@@ -12974,7 +13015,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3503,10 +4323,10 @@ interface(`files_manage_isid_type_blk_files',`
+@@ -3503,10 +4341,10 @@ interface(`files_manage_isid_type_blk_files',`
#
interface(`files_manage_isid_type_chr_files',`
gen_require(`
@@ -12987,7 +13028,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -3552,6 +4372,27 @@ interface(`files_dontaudit_getattr_home_dir',`
+@@ -3552,6 +4390,27 @@ interface(`files_dontaudit_getattr_home_dir',`
########################################
##
@@ -13015,7 +13056,7 @@ index f962f76..41b68a6 100644
## Search home directories root (/home).
##
##
-@@ -3814,20 +4655,38 @@ interface(`files_list_mnt',`
+@@ -3814,20 +4673,38 @@ interface(`files_list_mnt',`
######################################
##
@@ -13059,7 +13100,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -4012,6 +4871,12 @@ interface(`files_read_kernel_modules',`
+@@ -4012,6 +4889,12 @@ interface(`files_read_kernel_modules',`
allow $1 modules_object_t:dir list_dir_perms;
read_files_pattern($1, modules_object_t, modules_object_t)
read_lnk_files_pattern($1, modules_object_t, modules_object_t)
@@ -13072,7 +13113,7 @@ index f962f76..41b68a6 100644
')
########################################
-@@ -4217,192 +5082,218 @@ interface(`files_read_world_readable_sockets',`
+@@ -4217,174 +5100,218 @@ interface(`files_read_world_readable_sockets',`
allow $1 readable_t:sock_file read_sock_file_perms;
')
@@ -13307,36 +13348,26 @@ index f962f76..41b68a6 100644
+## File name transition for system db files in /var/lib.
##
##
--##
--## Domain allowed access.
--##
+##
+## Domain allowed access.
+##
- ##
- #
--interface(`files_delete_tmp_dir_entry',`
-- gen_require(`
-- type tmp_t;
-- ')
++##
++#
+interface(`files_filetrans_system_db_named_files',`
+ gen_require(`
+ type var_lib_t, system_db_t;
+ ')
-
-- allow $1 tmp_t:dir del_entry_dir_perms;
++
+ 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")
- ')
-
- ########################################
- ##
--## Read files in the tmp directory (/tmp).
++')
++
++########################################
++##
+## Allow the specified type to associate
+## to a filesystem with the type of the
+## temporary directory (/tmp).
- ##
--##
++##
+##
##
-## Domain allowed access.
@@ -13344,19 +13375,19 @@ index f962f76..41b68a6 100644
##
##
#
--interface(`files_read_generic_tmp_files',`
+-interface(`files_delete_tmp_dir_entry',`
+interface(`files_associate_tmp',`
gen_require(`
type tmp_t;
')
-- read_files_pattern($1, tmp_t, tmp_t)
+- allow $1 tmp_t:dir del_entry_dir_perms;
+ allow $1 tmp_t:filesystem associate;
')
########################################
##
--## Manage temporary directories in /tmp.
+-## Read files in the tmp directory (/tmp).
+## Allow the specified type to associate
+## to a filesystem with the type of the
+## / file system
@@ -13369,42 +13400,42 @@ index f962f76..41b68a6 100644
##
##
#
--interface(`files_manage_generic_tmp_dirs',`
+-interface(`files_read_generic_tmp_files',`
+interface(`files_associate_rootfs',`
gen_require(`
- type tmp_t;
+ type root_t;
')
-- manage_dirs_pattern($1, tmp_t, tmp_t)
+- read_files_pattern($1, tmp_t, tmp_t)
+ allow $1 root_t:filesystem associate;
')
########################################
##
--## Manage temporary files and directories in /tmp.
+-## Manage temporary directories in /tmp.
+## Get the attributes of the tmp directory (/tmp).
##
##
##
-@@ -4410,53 +5301,56 @@ interface(`files_manage_generic_tmp_dirs',`
+@@ -4392,53 +5319,56 @@ interface(`files_read_generic_tmp_files',`
##
##
#
--interface(`files_manage_generic_tmp_files',`
+-interface(`files_manage_generic_tmp_dirs',`
+interface(`files_getattr_tmp_dirs',`
gen_require(`
type tmp_t;
')
-- manage_files_pattern($1, tmp_t, tmp_t)
+- manage_dirs_pattern($1, tmp_t, tmp_t)
+ read_lnk_files_pattern($1, tmp_t, tmp_t)
+ allow $1 tmp_t:dir getattr;
')
########################################
##
--## Read symbolic links in the tmp directory (/tmp).
+-## Manage temporary files and directories in /tmp.
+## Do not audit attempts to check the
+## access on tmp files
##
@@ -13415,20 +13446,20 @@ index f962f76..41b68a6 100644
##
##
#
--interface(`files_read_generic_tmp_symlinks',`
+-interface(`files_manage_generic_tmp_files',`
+interface(`files_dontaudit_access_check_tmp',`
gen_require(`
- type tmp_t;
+ type etc_t;
')
-- read_lnk_files_pattern($1, tmp_t, tmp_t)
+- manage_files_pattern($1, tmp_t, tmp_t)
+ dontaudit $1 tmp_t:dir_file_class_set audit_access;
')
########################################
##
--## Read and write generic named sockets in the tmp directory (/tmp).
+-## Read symbolic links in the tmp directory (/tmp).
+## Do not audit attempts to get the
+## attributes of the tmp directory (/tmp).
##
@@ -13439,35 +13470,34 @@ index f962f76..41b68a6 100644
##
##
#
--interface(`files_rw_generic_tmp_sockets',`
+-interface(`files_read_generic_tmp_symlinks',`
+interface(`files_dontaudit_getattr_tmp_dirs',`
gen_require(`
type tmp_t;
')
-- rw_sock_files_pattern($1, tmp_t, tmp_t)
+- read_lnk_files_pattern($1, tmp_t, tmp_t)
+ dontaudit $1 tmp_t:dir getattr;
')
########################################
##
--## Set the attributes of all tmp directories.
+-## Read and write generic named sockets in the tmp directory (/tmp).
+## Search the tmp directory (/tmp).
##
##
##
-@@ -4464,77 +5358,93 @@ interface(`files_rw_generic_tmp_sockets',`
+@@ -4446,35 +5376,37 @@ interface(`files_read_generic_tmp_symlinks',`
##
##
#
--interface(`files_setattr_all_tmp_dirs',`
+-interface(`files_rw_generic_tmp_sockets',`
+interface(`files_search_tmp',`
gen_require(`
-- attribute tmpfile;
-+ type tmp_t;
+ type tmp_t;
')
-- allow $1 tmpfile:dir { search_dir_perms setattr };
+- rw_sock_files_pattern($1, tmp_t, tmp_t)
+ fs_search_tmpfs($1)
+ read_lnk_files_pattern($1, tmp_t, tmp_t)
+ allow $1 tmp_t:dir search_dir_perms;
@@ -13475,7 +13505,7 @@ index f962f76..41b68a6 100644
########################################
##
--## List all tmp directories.
+-## Set the attributes of all tmp directories.
+## Do not audit attempts to search the tmp directory (/tmp).
##
##
@@ -13485,83 +13515,93 @@ index f962f76..41b68a6 100644
##
##
#
--interface(`files_list_all_tmp',`
+-interface(`files_setattr_all_tmp_dirs',`
+interface(`files_dontaudit_search_tmp',`
gen_require(`
- attribute tmpfile;
+ type tmp_t;
')
-- allow $1 tmpfile:dir list_dir_perms;
+- allow $1 tmpfile:dir { search_dir_perms setattr };
+ dontaudit $1 tmp_t:dir search_dir_perms;
')
########################################
##
--## Relabel to and from all temporary
--## directory types.
+-## List all tmp directories.
+## Read the tmp directory (/tmp).
##
##
##
- ## Domain allowed access.
+@@ -4482,59 +5414,55 @@ interface(`files_setattr_all_tmp_dirs',`
##
##
--##
#
--interface(`files_relabel_all_tmp_dirs',`
+-interface(`files_list_all_tmp',`
+interface(`files_list_tmp',`
gen_require(`
- attribute tmpfile;
-- type var_t;
+ type tmp_t;
')
-- allow $1 var_t:dir search_dir_perms;
-- relabel_dirs_pattern($1, tmpfile, tmpfile)
+- allow $1 tmpfile:dir list_dir_perms;
+ read_lnk_files_pattern($1, tmp_t, tmp_t)
+ allow $1 tmp_t:dir list_dir_perms;
')
########################################
##
--## Do not audit attempts to get the attributes
--## of all tmp files.
+-## Relabel to and from all temporary
+-## directory types.
+## Do not audit listing of the tmp directory (/tmp).
##
##
##
--## Domain not to audit.
+-## Domain allowed access.
+## Domain to not audit.
##
##
+-##
#
--interface(`files_dontaudit_getattr_all_tmp_files',`
+-interface(`files_relabel_all_tmp_dirs',`
+interface(`files_dontaudit_list_tmp',`
gen_require(`
- attribute tmpfile;
+- type var_t;
+ type tmp_t;
')
-- dontaudit $1 tmpfile:file getattr;
+- allow $1 var_t:dir search_dir_perms;
+- relabel_dirs_pattern($1, tmpfile, tmpfile)
+ dontaudit $1 tmp_t:dir list_dir_perms;
-+')
-+
+ ')
+
+-########################################
+#######################################
-+##
+ ##
+-## Do not audit attempts to get the attributes
+-## of all tmp files.
+## Allow read and write to the tmp directory (/tmp).
-+##
-+##
+ ##
+ ##
+-##
+-## Domain not to audit.
+-##
+##
+## Domain not to audit.
+##
-+##
-+#
+ ##
+ #
+-interface(`files_dontaudit_getattr_all_tmp_files',`
+- gen_require(`
+- attribute tmpfile;
+- ')
+interface(`files_rw_generic_tmp_dir',`
+ gen_require(`
+ type tmp_t;
+ ')
-+
+
+- dontaudit $1 tmpfile:file getattr;
+ files_search_tmp($1)
+ allow $1 tmp_t:dir rw_dir_perms;
')
@@ -13574,7 +13614,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -4542,110 +5452,98 @@ interface(`files_dontaudit_getattr_all_tmp_files',`
+@@ -4542,110 +5470,98 @@ interface(`files_dontaudit_getattr_all_tmp_files',`
##
##
#
@@ -13713,7 +13753,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -4653,22 +5551,17 @@ interface(`files_tmp_filetrans',`
+@@ -4653,22 +5569,17 @@ interface(`files_tmp_filetrans',`
##
##
#
@@ -13740,7 +13780,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -4676,17 +5569,17 @@ interface(`files_purge_tmp',`
+@@ -4676,17 +5587,17 @@ interface(`files_purge_tmp',`
##
##
#
@@ -13762,7 +13802,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -4694,18 +5587,17 @@ interface(`files_setattr_usr_dirs',`
+@@ -4694,18 +5605,17 @@ interface(`files_setattr_usr_dirs',`
##
##
#
@@ -13785,7 +13825,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -4713,35 +5605,35 @@ interface(`files_search_usr',`
+@@ -4713,35 +5623,35 @@ interface(`files_search_usr',`
##
##
#
@@ -13830,7 +13870,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -4749,36 +5641,35 @@ interface(`files_dontaudit_write_usr_dirs',`
+@@ -4749,36 +5659,35 @@ interface(`files_dontaudit_write_usr_dirs',`
##
##
#
@@ -13876,7 +13916,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -4786,17 +5677,17 @@ interface(`files_dontaudit_rw_usr_dirs',`
+@@ -4786,17 +5695,17 @@ interface(`files_dontaudit_rw_usr_dirs',`
##
##
#
@@ -13898,7 +13938,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -4804,73 +5695,59 @@ interface(`files_delete_usr_dirs',`
+@@ -4804,73 +5713,59 @@ interface(`files_delete_usr_dirs',`
##
##
#
@@ -13991,7 +14031,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -4878,55 +5755,58 @@ interface(`files_read_usr_files',`
+@@ -4878,55 +5773,58 @@ interface(`files_read_usr_files',`
##
##
#
@@ -14066,7 +14106,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -4934,67 +5814,70 @@ interface(`files_manage_usr_files',`
+@@ -4934,67 +5832,70 @@ interface(`files_manage_usr_files',`
##
##
#
@@ -14155,7 +14195,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5003,35 +5886,50 @@ interface(`files_read_usr_symlinks',`
+@@ -5003,35 +5904,50 @@ interface(`files_read_usr_symlinks',`
##
##
#
@@ -14215,7 +14255,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5039,20 +5937,17 @@ interface(`files_dontaudit_search_src',`
+@@ -5039,20 +5955,17 @@ interface(`files_dontaudit_search_src',`
##
##
#
@@ -14240,7 +14280,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5060,20 +5955,18 @@ interface(`files_getattr_usr_src_files',`
+@@ -5060,20 +5973,18 @@ interface(`files_getattr_usr_src_files',`
##
##
#
@@ -14265,7 +14305,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5081,38 +5974,35 @@ interface(`files_read_usr_src_files',`
+@@ -5081,38 +5992,35 @@ interface(`files_read_usr_src_files',`
##
##
#
@@ -14313,7 +14353,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5120,37 +6010,36 @@ interface(`files_create_kernel_symbol_table',`
+@@ -5120,37 +6028,36 @@ interface(`files_create_kernel_symbol_table',`
##
##
#
@@ -14361,7 +14401,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5158,35 +6047,35 @@ interface(`files_delete_kernel_symbol_table',`
+@@ -5158,35 +6065,35 @@ interface(`files_delete_kernel_symbol_table',`
##
##
#
@@ -14406,7 +14446,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5194,36 +6083,55 @@ interface(`files_dontaudit_write_var_dirs',`
+@@ -5194,36 +6101,55 @@ interface(`files_dontaudit_write_var_dirs',`
##
##
#
@@ -14472,7 +14512,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5231,36 +6139,37 @@ interface(`files_dontaudit_search_var',`
+@@ -5231,36 +6157,37 @@ interface(`files_dontaudit_search_var',`
##
##
#
@@ -14520,7 +14560,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5268,17 +6177,17 @@ interface(`files_manage_var_dirs',`
+@@ -5268,17 +6195,17 @@ interface(`files_manage_var_dirs',`
##
##
#
@@ -14542,7 +14582,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5286,17 +6195,17 @@ interface(`files_read_var_files',`
+@@ -5286,17 +6213,17 @@ interface(`files_read_var_files',`
##
##
#
@@ -14564,7 +14604,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5304,73 +6213,86 @@ interface(`files_append_var_files',`
+@@ -5304,73 +6231,86 @@ interface(`files_append_var_files',`
##
##
#
@@ -14671,7 +14711,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5378,50 +6300,41 @@ interface(`files_read_var_symlinks',`
+@@ -5378,50 +6318,41 @@ interface(`files_read_var_symlinks',`
##
##
#
@@ -14736,7 +14776,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5429,69 +6342,56 @@ interface(`files_var_filetrans',`
+@@ -5429,69 +6360,56 @@ interface(`files_var_filetrans',`
##
##
#
@@ -14821,7 +14861,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5499,17 +6399,18 @@ interface(`files_dontaudit_search_var_lib',`
+@@ -5499,17 +6417,18 @@ interface(`files_dontaudit_search_var_lib',`
##
##
#
@@ -14845,7 +14885,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5517,70 +6418,54 @@ interface(`files_list_var_lib',`
+@@ -5517,70 +6436,54 @@ interface(`files_list_var_lib',`
##
##
#
@@ -14929,7 +14969,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5588,41 +6473,36 @@ interface(`files_read_var_lib_files',`
+@@ -5588,41 +6491,36 @@ interface(`files_read_var_lib_files',`
##
##
#
@@ -14981,7 +15021,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5630,36 +6510,36 @@ interface(`files_manage_urandom_seed',`
+@@ -5630,36 +6528,36 @@ interface(`files_manage_urandom_seed',`
##
##
#
@@ -15028,7 +15068,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5667,38 +6547,35 @@ interface(`files_setattr_lock_dirs',`
+@@ -5667,38 +6565,35 @@ interface(`files_setattr_lock_dirs',`
##
##
#
@@ -15076,7 +15116,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5706,19 +6583,17 @@ interface(`files_dontaudit_search_locks',`
+@@ -5706,19 +6601,17 @@ interface(`files_dontaudit_search_locks',`
##
##
#
@@ -15100,7 +15140,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5726,60 +6601,54 @@ interface(`files_list_locks',`
+@@ -5726,60 +6619,54 @@ interface(`files_list_locks',`
##
##
#
@@ -15176,7 +15216,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5787,20 +6656,18 @@ interface(`files_relabel_all_lock_dirs',`
+@@ -5787,20 +6674,18 @@ interface(`files_relabel_all_lock_dirs',`
##
##
#
@@ -15202,7 +15242,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5808,63 +6675,68 @@ interface(`files_getattr_generic_locks',`
+@@ -5808,63 +6693,68 @@ interface(`files_getattr_generic_locks',`
##
##
#
@@ -15294,7 +15334,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5872,101 +6744,87 @@ interface(`files_delete_all_locks',`
+@@ -5872,101 +6762,87 @@ interface(`files_delete_all_locks',`
##
##
#
@@ -15431,7 +15471,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5974,19 +6832,17 @@ interface(`files_dontaudit_getattr_pid_dirs',`
+@@ -5974,19 +6850,17 @@ interface(`files_dontaudit_getattr_pid_dirs',`
##
##
#
@@ -15455,7 +15495,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -5994,39 +6850,52 @@ interface(`files_setattr_pid_dirs',`
+@@ -5994,39 +6868,52 @@ interface(`files_setattr_pid_dirs',`
##
##
#
@@ -15521,7 +15561,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -6034,18 +6903,18 @@ interface(`files_dontaudit_search_pids',`
+@@ -6034,18 +6921,18 @@ interface(`files_dontaudit_search_pids',`
##
##
#
@@ -15545,7 +15585,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -6053,19 +6922,18 @@ interface(`files_list_pids',`
+@@ -6053,19 +6940,1283 @@ interface(`files_list_pids',`
##
##
#
@@ -15560,45 +15600,35 @@ index f962f76..41b68a6 100644
- list_dirs_pattern($1, var_t, var_run_t)
- read_files_pattern($1, var_run_t, var_run_t)
+ read_lnk_files_pattern($1, { var_t var_lib_t }, var_lib_t)
- ')
-
- ########################################
- ##
--## Write named generic process ID pipes
++')
++
++########################################
++##
+## manage generic symbolic links
+## in the /var/lib directory.
- ##
- ##
- ##
-@@ -6073,23 +6941,652 @@ interface(`files_read_generic_pids',`
- ##
- ##
- #
--interface(`files_write_generic_pid_pipes',`
++##
++##
++##
++## Domain allowed access.
++##
++##
++#
+interface(`files_manage_var_lib_symlinks',`
- gen_require(`
-- type var_run_t;
++ gen_require(`
+ type var_lib_t;
- ')
-
-- allow $1 var_run_t:lnk_file read_lnk_file_perms;
-- allow $1 var_run_t:fifo_file write;
++ ')
++
+ manage_lnk_files_pattern($1,var_lib_t,var_lib_t)
- ')
-
++')
++
+# cjp: the next two interfaces really need to be fixed
+# in some way. They really neeed their own types.
+
- ########################################
- ##
--## Create an object in the process ID directory, with a private type.
++########################################
++##
+## Create, read, write, and delete the
+## pseudorandom number generator seed.
- ##
--##
--##
--## Create an object in the process ID directory (e.g., /var/run)
--## with a private type. Typically this is used for creating
++##
+##
+##
+## Domain allowed access.
@@ -16229,14 +16259,14 @@ index f962f76..41b68a6 100644
+##
+## Create an object in the process ID directory (e.g., /var/run)
+## with a private type. Typically this is used for creating
- ## private PID files in /var/run with the private type instead
- ## of the general PID file type. To accomplish this goal,
- ## either the program must be SELinux-aware, or use this interface.
-@@ -6098,18 +7595,781 @@ interface(`files_write_generic_pid_pipes',`
- ## Related interfaces:
- ##
- ##
--## - files_pid_file()
++## private PID files in /var/run with the private type instead
++## of the general PID file type. To accomplish this goal,
++## either the program must be SELinux-aware, or use this interface.
++##
++##
++## Related interfaces:
++##
++##
+##
@@ -16693,11 +16723,9 @@ index f962f76..41b68a6 100644
+##
+##
+## - files_spool_filetrans()
- ##
- ##
- ## Example usage with a domain that can create and
--## write its PID file with a private PID file type in the
--## /var/run directory:
++##
++##
++## Example usage with a domain that can create and
+## write its spool file in the system spool file
+## directories (/var/spool):
+##
@@ -16706,7 +16734,7 @@ index f962f76..41b68a6 100644
+## files_spool_file(myfile_spool_t)
+## allow mydomain_t myfile_spool_t:file { create_file_perms write_file_perms };
+## files_spool_filetrans(mydomain_t, myfile_spool_t, file)
- ##
++##
+##
+##
+##
@@ -16837,30 +16865,36 @@ index f962f76..41b68a6 100644
+ ')
+
+ list_dirs_pattern($1, var_t, var_spool_t)
-+')
-+
-+########################################
-+##
+ ')
+
+ ########################################
+ ##
+-## Write named generic process ID pipes
+## Create, read, write, and delete generic
+## spool directories (/var/spool).
-+##
-+##
-+##
-+## Domain allowed access.
-+##
-+##
-+#
+ ##
+ ##
+ ##
+@@ -6073,43 +8224,170 @@ interface(`files_read_generic_pids',`
+ ##
+ ##
+ #
+-interface(`files_write_generic_pid_pipes',`
+interface(`files_manage_generic_spool_dirs',`
-+ gen_require(`
+ gen_require(`
+- type var_run_t;
+ type var_t, var_spool_t;
-+ ')
-+
+ ')
+
+- allow $1 var_run_t:lnk_file read_lnk_file_perms;
+- allow $1 var_run_t:fifo_file write;
+ allow $1 var_t:dir search_dir_perms;
+ manage_dirs_pattern($1, var_spool_t, var_spool_t)
-+')
-+
-+########################################
-+##
+ ')
+
+ ########################################
+ ##
+-## Create an object in the process ID directory, with a private type.
+## Read generic spool files.
+##
+##
@@ -17010,9 +17044,27 @@ index f962f76..41b68a6 100644
+########################################
+##
+## Create a core files in /
-+##
-+##
+ ##
+ ##
##
+-## Create an object in the process ID directory (e.g., /var/run)
+-## with a private type. Typically this is used for creating
+-## private PID files in /var/run with the private type instead
+-## of the general PID file type. To accomplish this goal,
+-## either the program must be SELinux-aware, or use this interface.
+-##
+-##
+-## Related interfaces:
+-##
+-##
+-## - files_pid_file()
+-##
+-##
+-## Example usage with a domain that can create and
+-## write its PID file with a private PID file type in the
+-## /var/run directory:
+-##
+-##
-## type mypidfile_t;
-## files_pid_file(mypidfile_t)
-## allow mydomain_t mypidfile_t:file { create_file_perms write_file_perms };
@@ -17021,7 +17073,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -6117,80 +8377,157 @@ interface(`files_write_generic_pid_pipes',`
+@@ -6117,80 +8395,157 @@ interface(`files_write_generic_pid_pipes',`
## Domain allowed access.
##
##
@@ -17208,7 +17260,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -6198,19 +8535,17 @@ interface(`files_rw_generic_pids',`
+@@ -6198,19 +8553,17 @@ interface(`files_rw_generic_pids',`
##
##
#
@@ -17232,7 +17284,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -6218,18 +8553,17 @@ interface(`files_dontaudit_getattr_all_pids',`
+@@ -6218,18 +8571,17 @@ interface(`files_dontaudit_getattr_all_pids',`
##
##
#
@@ -17255,7 +17307,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -6237,129 +8571,119 @@ interface(`files_dontaudit_write_all_pids',`
+@@ -6237,129 +8589,119 @@ interface(`files_dontaudit_write_all_pids',`
##
##
#
@@ -17425,7 +17477,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -6367,18 +8691,19 @@ interface(`files_mounton_all_poly_members',`
+@@ -6367,18 +8709,19 @@ interface(`files_mounton_all_poly_members',`
##
##
#
@@ -17450,7 +17502,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -6386,132 +8711,227 @@ interface(`files_search_spool',`
+@@ -6386,132 +8729,227 @@ interface(`files_search_spool',`
##
##
#
@@ -17724,7 +17776,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -6519,53 +8939,17 @@ interface(`files_spool_filetrans',`
+@@ -6519,53 +8957,17 @@ interface(`files_spool_filetrans',`
##
##
#
@@ -17782,7 +17834,7 @@ index f962f76..41b68a6 100644
##
##
##
-@@ -6573,10 +8957,10 @@ interface(`files_polyinstantiate_all',`
+@@ -6573,10 +8975,10 @@ interface(`files_polyinstantiate_all',`
##
##
#
@@ -22916,6 +22968,49 @@ index 2da98c2..31bed0a 100644
attribute mcsreadall;
attribute mcs_constrained_type;
+attribute mcsnetwrite;
+diff --git a/policy/modules/kernel/mls.if b/policy/modules/kernel/mls.if
+index d178478..42bf05b 100644
+--- a/policy/modules/kernel/mls.if
++++ b/policy/modules/kernel/mls.if
+@@ -100,6 +100,26 @@ interface(`mls_file_write_to_clearance',`
+ ########################################
+ ##
+ ## Make specified domain MLS trusted
++## for relabelto to files up to its clearance.
++##
++##
++##
++## Domain allowed access.
++##
++##
++##
++#
++interface(`mls_file_relabel_to_clearance',`
++ gen_require(`
++ attribute mlsfilerelabeltoclr;
++ ')
++
++ typeattribute $1 mlsfilerelabeltoclr;
++')
++
++########################################
++##
++## Make specified domain MLS trusted
+ ## for writing to files at all levels. (Deprecated)
+ ##
+ ##
+diff --git a/policy/modules/kernel/mls.te b/policy/modules/kernel/mls.te
+index 8c7bd90..66ee5b9 100644
+--- a/policy/modules/kernel/mls.te
++++ b/policy/modules/kernel/mls.te
+@@ -12,6 +12,7 @@ attribute mlsfilewritetoclr;
+ attribute mlsfilewriteinrange;
+ attribute mlsfileupgrade;
+ attribute mlsfiledowngrade;
++attribute mlsfilerelabeltoclr;
+
+ attribute mlsnetread;
+ attribute mlsnetreadtoclr;
diff --git a/policy/modules/kernel/selinux.fc b/policy/modules/kernel/selinux.fc
index 7be4ddf..4d4c577 100644
--- a/policy/modules/kernel/selinux.fc
@@ -37160,7 +37255,7 @@ index 79a45f6..9926eaf 100644
+ allow $1 init_var_lib_t:dir search_dir_perms;
+')
diff --git a/policy/modules/system/init.te b/policy/modules/system/init.te
-index 17eda24..677fc9d 100644
+index 17eda24..4616101 100644
--- a/policy/modules/system/init.te
+++ b/policy/modules/system/init.te
@@ -11,10 +11,31 @@ gen_require(`
@@ -37459,7 +37554,7 @@ index 17eda24..677fc9d 100644
ifdef(`distro_gentoo',`
allow init_t self:process { getcap setcap };
-@@ -186,29 +326,263 @@ ifdef(`distro_gentoo',`
+@@ -186,29 +326,264 @@ ifdef(`distro_gentoo',`
')
ifdef(`distro_redhat',`
@@ -37578,6 +37673,7 @@ index 17eda24..677fc9d 100644
+
+files_search_all(init_t)
+files_mounton_all_mountpoints(init_t)
++files_mounton_etc(init_t)
+files_unmount_all_file_type_fs(init_t)
+files_manage_all_pid_dirs(init_t)
+files_manage_etc_dirs(init_t)
@@ -37732,7 +37828,7 @@ index 17eda24..677fc9d 100644
')
optional_policy(`
-@@ -216,7 +590,30 @@ optional_policy(`
+@@ -216,7 +591,30 @@ optional_policy(`
')
optional_policy(`
@@ -37764,7 +37860,7 @@ index 17eda24..677fc9d 100644
')
########################################
-@@ -225,9 +622,9 @@ optional_policy(`
+@@ -225,9 +623,9 @@ optional_policy(`
#
allow initrc_t self:process { getpgid setsched setpgid setrlimit getsched };
@@ -37776,7 +37872,7 @@ index 17eda24..677fc9d 100644
allow initrc_t self:passwd rootok;
allow initrc_t self:key manage_key_perms;
-@@ -258,12 +655,16 @@ manage_fifo_files_pattern(initrc_t, initrc_state_t, initrc_state_t)
+@@ -258,12 +656,16 @@ manage_fifo_files_pattern(initrc_t, initrc_state_t, initrc_state_t)
allow initrc_t initrc_var_run_t:file manage_file_perms;
files_pid_filetrans(initrc_t, initrc_var_run_t, file)
@@ -37793,7 +37889,7 @@ index 17eda24..677fc9d 100644
manage_dirs_pattern(initrc_t, initrc_var_log_t, initrc_var_log_t)
manage_files_pattern(initrc_t, initrc_var_log_t, initrc_var_log_t)
-@@ -279,23 +680,36 @@ kernel_change_ring_buffer_level(initrc_t)
+@@ -279,23 +681,36 @@ kernel_change_ring_buffer_level(initrc_t)
kernel_clear_ring_buffer(initrc_t)
kernel_get_sysvipc_info(initrc_t)
kernel_read_all_sysctls(initrc_t)
@@ -37836,7 +37932,7 @@ index 17eda24..677fc9d 100644
corenet_tcp_sendrecv_all_ports(initrc_t)
corenet_udp_sendrecv_all_ports(initrc_t)
corenet_tcp_connect_all_ports(initrc_t)
-@@ -303,9 +717,11 @@ corenet_sendrecv_all_client_packets(initrc_t)
+@@ -303,9 +718,11 @@ corenet_sendrecv_all_client_packets(initrc_t)
dev_read_rand(initrc_t)
dev_read_urand(initrc_t)
@@ -37848,7 +37944,7 @@ index 17eda24..677fc9d 100644
dev_rw_sysfs(initrc_t)
dev_list_usbfs(initrc_t)
dev_read_framebuffer(initrc_t)
-@@ -313,8 +729,10 @@ dev_write_framebuffer(initrc_t)
+@@ -313,8 +730,10 @@ dev_write_framebuffer(initrc_t)
dev_read_realtime_clock(initrc_t)
dev_read_sound_mixer(initrc_t)
dev_write_sound_mixer(initrc_t)
@@ -37859,7 +37955,7 @@ index 17eda24..677fc9d 100644
dev_delete_lvm_control_dev(initrc_t)
dev_manage_generic_symlinks(initrc_t)
dev_manage_generic_files(initrc_t)
-@@ -322,8 +740,7 @@ dev_manage_generic_files(initrc_t)
+@@ -322,8 +741,7 @@ dev_manage_generic_files(initrc_t)
dev_delete_generic_symlinks(initrc_t)
dev_getattr_all_blk_files(initrc_t)
dev_getattr_all_chr_files(initrc_t)
@@ -37869,7 +37965,7 @@ index 17eda24..677fc9d 100644
domain_kill_all_domains(initrc_t)
domain_signal_all_domains(initrc_t)
-@@ -332,7 +749,6 @@ domain_sigstop_all_domains(initrc_t)
+@@ -332,7 +750,6 @@ domain_sigstop_all_domains(initrc_t)
domain_sigchld_all_domains(initrc_t)
domain_read_all_domains_state(initrc_t)
domain_getattr_all_domains(initrc_t)
@@ -37877,7 +37973,7 @@ index 17eda24..677fc9d 100644
domain_getsession_all_domains(initrc_t)
domain_use_interactive_fds(initrc_t)
# for lsof which is used by alsa shutdown:
-@@ -340,6 +756,7 @@ domain_dontaudit_getattr_all_udp_sockets(initrc_t)
+@@ -340,6 +757,7 @@ domain_dontaudit_getattr_all_udp_sockets(initrc_t)
domain_dontaudit_getattr_all_tcp_sockets(initrc_t)
domain_dontaudit_getattr_all_dgram_sockets(initrc_t)
domain_dontaudit_getattr_all_pipes(initrc_t)
@@ -37885,7 +37981,7 @@ index 17eda24..677fc9d 100644
files_getattr_all_dirs(initrc_t)
files_getattr_all_files(initrc_t)
-@@ -347,14 +764,15 @@ files_getattr_all_symlinks(initrc_t)
+@@ -347,14 +765,15 @@ files_getattr_all_symlinks(initrc_t)
files_getattr_all_pipes(initrc_t)
files_getattr_all_sockets(initrc_t)
files_purge_tmp(initrc_t)
@@ -37903,7 +37999,7 @@ index 17eda24..677fc9d 100644
files_read_usr_files(initrc_t)
files_manage_urandom_seed(initrc_t)
files_manage_generic_spool(initrc_t)
-@@ -364,8 +782,12 @@ files_list_isid_type_dirs(initrc_t)
+@@ -364,8 +783,12 @@ files_list_isid_type_dirs(initrc_t)
files_mounton_isid_type_dirs(initrc_t)
files_list_default(initrc_t)
files_mounton_default(initrc_t)
@@ -37917,7 +38013,7 @@ index 17eda24..677fc9d 100644
fs_list_inotifyfs(initrc_t)
fs_register_binary_executable_type(initrc_t)
# rhgb-console writes to ramfs
-@@ -375,10 +797,11 @@ fs_mount_all_fs(initrc_t)
+@@ -375,10 +798,11 @@ fs_mount_all_fs(initrc_t)
fs_unmount_all_fs(initrc_t)
fs_remount_all_fs(initrc_t)
fs_getattr_all_fs(initrc_t)
@@ -37931,7 +38027,7 @@ index 17eda24..677fc9d 100644
mcs_process_set_categories(initrc_t)
mls_file_read_all_levels(initrc_t)
-@@ -387,8 +810,10 @@ mls_process_read_up(initrc_t)
+@@ -387,8 +811,10 @@ mls_process_read_up(initrc_t)
mls_process_write_down(initrc_t)
mls_rangetrans_source(initrc_t)
mls_fd_share_all_levels(initrc_t)
@@ -37942,7 +38038,7 @@ index 17eda24..677fc9d 100644
storage_getattr_fixed_disk_dev(initrc_t)
storage_setattr_fixed_disk_dev(initrc_t)
-@@ -398,6 +823,7 @@ term_use_all_terms(initrc_t)
+@@ -398,6 +824,7 @@ term_use_all_terms(initrc_t)
term_reset_tty_labels(initrc_t)
auth_rw_login_records(initrc_t)
@@ -37950,7 +38046,7 @@ index 17eda24..677fc9d 100644
auth_setattr_login_records(initrc_t)
auth_rw_lastlog(initrc_t)
auth_read_pam_pid(initrc_t)
-@@ -416,20 +842,18 @@ logging_read_all_logs(initrc_t)
+@@ -416,20 +843,18 @@ logging_read_all_logs(initrc_t)
logging_append_all_logs(initrc_t)
logging_read_audit_config(initrc_t)
@@ -37974,7 +38070,7 @@ index 17eda24..677fc9d 100644
ifdef(`distro_debian',`
dev_setattr_generic_dirs(initrc_t)
-@@ -451,7 +875,6 @@ ifdef(`distro_gentoo',`
+@@ -451,7 +876,6 @@ ifdef(`distro_gentoo',`
allow initrc_t self:process setfscreate;
dev_create_null_dev(initrc_t)
dev_create_zero_dev(initrc_t)
@@ -37982,7 +38078,7 @@ index 17eda24..677fc9d 100644
term_create_console_dev(initrc_t)
# unfortunately /sbin/rc does stupid tricks
-@@ -486,6 +909,10 @@ ifdef(`distro_gentoo',`
+@@ -486,6 +910,10 @@ ifdef(`distro_gentoo',`
sysnet_setattr_config(initrc_t)
optional_policy(`
@@ -37993,7 +38089,7 @@ index 17eda24..677fc9d 100644
alsa_read_lib(initrc_t)
')
-@@ -506,7 +933,7 @@ ifdef(`distro_redhat',`
+@@ -506,7 +934,7 @@ ifdef(`distro_redhat',`
# Red Hat systems seem to have a stray
# fd open from the initrd
@@ -38002,7 +38098,7 @@ index 17eda24..677fc9d 100644
files_dontaudit_read_root_files(initrc_t)
# These seem to be from the initrd
-@@ -521,6 +948,7 @@ ifdef(`distro_redhat',`
+@@ -521,6 +949,7 @@ ifdef(`distro_redhat',`
files_create_boot_dirs(initrc_t)
files_create_boot_flag(initrc_t)
files_rw_boot_symlinks(initrc_t)
@@ -38010,7 +38106,7 @@ index 17eda24..677fc9d 100644
# wants to read /.fonts directory
files_read_default_files(initrc_t)
files_mountpoint(initrc_tmp_t)
-@@ -541,6 +969,7 @@ ifdef(`distro_redhat',`
+@@ -541,6 +970,7 @@ ifdef(`distro_redhat',`
miscfiles_rw_localization(initrc_t)
miscfiles_setattr_localization(initrc_t)
miscfiles_relabel_localization(initrc_t)
@@ -38018,7 +38114,7 @@ index 17eda24..677fc9d 100644
miscfiles_read_fonts(initrc_t)
miscfiles_read_hwdata(initrc_t)
-@@ -550,8 +979,44 @@ ifdef(`distro_redhat',`
+@@ -550,8 +980,44 @@ ifdef(`distro_redhat',`
')
optional_policy(`
@@ -38063,7 +38159,7 @@ index 17eda24..677fc9d 100644
')
optional_policy(`
-@@ -559,14 +1024,31 @@ ifdef(`distro_redhat',`
+@@ -559,14 +1025,31 @@ ifdef(`distro_redhat',`
rpc_write_exports(initrc_t)
rpc_manage_nfs_state_data(initrc_t)
')
@@ -38095,7 +38191,7 @@ index 17eda24..677fc9d 100644
')
')
-@@ -577,6 +1059,39 @@ ifdef(`distro_suse',`
+@@ -577,6 +1060,39 @@ ifdef(`distro_suse',`
')
')
@@ -38135,7 +38231,7 @@ index 17eda24..677fc9d 100644
optional_policy(`
amavis_search_lib(initrc_t)
amavis_setattr_pid_files(initrc_t)
-@@ -589,6 +1104,8 @@ optional_policy(`
+@@ -589,6 +1105,8 @@ optional_policy(`
optional_policy(`
apache_read_config(initrc_t)
apache_list_modules(initrc_t)
@@ -38144,7 +38240,7 @@ index 17eda24..677fc9d 100644
')
optional_policy(`
-@@ -610,6 +1127,7 @@ optional_policy(`
+@@ -610,6 +1128,7 @@ optional_policy(`
optional_policy(`
cgroup_stream_connect_cgred(initrc_t)
@@ -38152,7 +38248,7 @@ index 17eda24..677fc9d 100644
')
optional_policy(`
-@@ -626,6 +1144,17 @@ optional_policy(`
+@@ -626,6 +1145,17 @@ optional_policy(`
')
optional_policy(`
@@ -38170,7 +38266,7 @@ index 17eda24..677fc9d 100644
dev_getattr_printer_dev(initrc_t)
cups_read_log(initrc_t)
-@@ -642,9 +1171,13 @@ optional_policy(`
+@@ -642,9 +1172,13 @@ optional_policy(`
dbus_connect_system_bus(initrc_t)
dbus_system_bus_client(initrc_t)
dbus_read_config(initrc_t)
@@ -38184,7 +38280,7 @@ index 17eda24..677fc9d 100644
')
optional_policy(`
-@@ -657,15 +1190,11 @@ optional_policy(`
+@@ -657,15 +1191,11 @@ optional_policy(`
')
optional_policy(`
@@ -38202,7 +38298,7 @@ index 17eda24..677fc9d 100644
')
optional_policy(`
-@@ -686,6 +1215,15 @@ optional_policy(`
+@@ -686,6 +1216,15 @@ optional_policy(`
')
optional_policy(`
@@ -38218,7 +38314,7 @@ index 17eda24..677fc9d 100644
inn_exec_config(initrc_t)
')
-@@ -726,6 +1264,7 @@ optional_policy(`
+@@ -726,6 +1265,7 @@ optional_policy(`
lpd_list_spool(initrc_t)
lpd_read_config(initrc_t)
@@ -38226,7 +38322,7 @@ index 17eda24..677fc9d 100644
')
optional_policy(`
-@@ -743,7 +1282,13 @@ optional_policy(`
+@@ -743,7 +1283,13 @@ optional_policy(`
')
optional_policy(`
@@ -38241,7 +38337,7 @@ index 17eda24..677fc9d 100644
mta_dontaudit_read_spool_symlinks(initrc_t)
')
-@@ -766,6 +1311,10 @@ optional_policy(`
+@@ -766,6 +1312,10 @@ optional_policy(`
')
optional_policy(`
@@ -38252,7 +38348,7 @@ index 17eda24..677fc9d 100644
postgresql_manage_db(initrc_t)
postgresql_read_config(initrc_t)
')
-@@ -775,10 +1324,20 @@ optional_policy(`
+@@ -775,10 +1325,20 @@ optional_policy(`
')
optional_policy(`
@@ -38273,7 +38369,7 @@ index 17eda24..677fc9d 100644
quota_manage_flags(initrc_t)
')
-@@ -787,6 +1346,10 @@ optional_policy(`
+@@ -787,6 +1347,10 @@ optional_policy(`
')
optional_policy(`
@@ -38284,7 +38380,7 @@ index 17eda24..677fc9d 100644
fs_write_ramfs_sockets(initrc_t)
fs_search_ramfs(initrc_t)
-@@ -808,8 +1371,6 @@ optional_policy(`
+@@ -808,8 +1372,6 @@ optional_policy(`
# bash tries ioctl for some reason
files_dontaudit_ioctl_all_pids(initrc_t)
@@ -38293,7 +38389,7 @@ index 17eda24..677fc9d 100644
')
optional_policy(`
-@@ -818,6 +1379,10 @@ optional_policy(`
+@@ -818,6 +1380,10 @@ optional_policy(`
')
optional_policy(`
@@ -38304,7 +38400,7 @@ index 17eda24..677fc9d 100644
# shorewall-init script run /var/lib/shorewall/firewall
shorewall_lib_domtrans(initrc_t)
')
-@@ -827,10 +1392,12 @@ optional_policy(`
+@@ -827,10 +1393,12 @@ optional_policy(`
squid_manage_logs(initrc_t)
')
@@ -38317,7 +38413,7 @@ index 17eda24..677fc9d 100644
optional_policy(`
ssh_dontaudit_read_server_keys(initrc_t)
-@@ -857,21 +1424,62 @@ optional_policy(`
+@@ -857,21 +1425,62 @@ optional_policy(`
')
optional_policy(`
@@ -38381,7 +38477,7 @@ index 17eda24..677fc9d 100644
')
optional_policy(`
-@@ -887,6 +1495,10 @@ optional_policy(`
+@@ -887,6 +1496,10 @@ optional_policy(`
')
optional_policy(`
@@ -38392,7 +38488,7 @@ index 17eda24..677fc9d 100644
# Set device ownerships/modes.
xserver_setattr_console_pipes(initrc_t)
-@@ -897,3 +1509,218 @@ optional_policy(`
+@@ -897,3 +1510,218 @@ optional_policy(`
optional_policy(`
zebra_read_config(initrc_t)
')
@@ -39582,7 +39678,7 @@ index 0000000..c814795
+fs_manage_kdbus_dirs(systemd_logind_t)
+fs_manage_kdbus_files(systemd_logind_t)
diff --git a/policy/modules/system/libraries.fc b/policy/modules/system/libraries.fc
-index 73bb3c0..4fef124 100644
+index 73bb3c0..8cf7041 100644
--- a/policy/modules/system/libraries.fc
+++ b/policy/modules/system/libraries.fc
@@ -1,3 +1,4 @@
@@ -39661,7 +39757,7 @@ index 73bb3c0..4fef124 100644
/usr/lib/libADM5.*\.so(\.[^/]*)* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
/usr/lib/libatiadlxx\.so(\.[^/]*)* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
/usr/lib/win32/.*\.so(\.[^/]*)* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
-@@ -141,19 +152,21 @@ ifdef(`distro_redhat',`
+@@ -141,19 +152,23 @@ ifdef(`distro_redhat',`
/usr/lib/ati-fglrx/.+\.so(\..*)? -- gen_context(system_u:object_r:textrel_shlib_t,s0)
/usr/lib/fglrx/.*\.so(\.[^/]*)* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
/usr/lib/libjs\.so.* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
@@ -39683,12 +39779,14 @@ index 73bb3c0..4fef124 100644
-/usr/(local/)?.*\.so(\.[^/]*)* -- gen_context(system_u:object_r:lib_t,s0)
-/usr/(local/)?lib(64)?/wine/.+\.so -- gen_context(system_u:object_r:textrel_shlib_t,s0)
-/usr/(local/)?lib(64)?/(sse2/)?libfame-.*\.so.* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
++/usr/lib/systemd/libsystemd-shared-231\.so.* -- gen_context(system_u:object_r:lib_t,s0)
++
+/usr/.*\.so(\.[^/]*)* -- gen_context(system_u:object_r:lib_t,s0)
+/usr/lib/wine/.+\.so -- gen_context(system_u:object_r:textrel_shlib_t,s0)
/usr/NX/lib/libXcomp\.so.* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
/usr/NX/lib/libjpeg\.so.* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
-@@ -182,11 +195,13 @@ ifdef(`distro_redhat',`
+@@ -182,11 +197,13 @@ ifdef(`distro_redhat',`
# Fedora Core packages: gstreamer-plugins, compat-libstdc++, Glide3, libdv
# HelixPlayer, SDL, xorg-x11, xorg-x11-libs, Hermes, valgrind, openoffice.org-libs, httpd - php
HOME_DIR/.*/plugins/nppdf\.so.* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
@@ -39702,7 +39800,7 @@ index 73bb3c0..4fef124 100644
/usr/lib/libfglrx_gamma\.so.* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
/usr/lib/mozilla/plugins/nppdf\.so -- gen_context(system_u:object_r:textrel_shlib_t,s0)
/usr/lib/mozilla/plugins/libvlcplugin\.so -- gen_context(system_u:object_r:textrel_shlib_t,s0)
-@@ -241,13 +256,11 @@ HOME_DIR/.*/plugins/nppdf\.so.* -- gen_context(system_u:object_r:textrel_shlib_
+@@ -241,13 +258,11 @@ HOME_DIR/.*/plugins/nppdf\.so.* -- gen_context(system_u:object_r:textrel_shlib_
# Livna.org packages: xmms-mp3, ffmpeg, xvidcore, xine-lib, gsm, lame
/usr/lib.*/libmpg123\.so(\.[^/]*)* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
@@ -39718,7 +39816,7 @@ index 73bb3c0..4fef124 100644
# Jai, Sun Microsystems (Jpackage SPRM)
/usr/lib/libmlib_jai\.so -- gen_context(system_u:object_r:textrel_shlib_t,s0)
-@@ -269,20 +282,19 @@ HOME_DIR/.mozilla/plugins/nprhapengine\.so.* -- gen_context(system_u:object_r:te
+@@ -269,20 +284,19 @@ HOME_DIR/.mozilla/plugins/nprhapengine\.so.* -- gen_context(system_u:object_r:te
# Java, Sun Microsystems (JPackage SRPM)
/usr/(.*/)?jre.*/.*\.so(\.[^/]*)* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
@@ -39749,7 +39847,7 @@ index 73bb3c0..4fef124 100644
/usr/(.*/)?intellinux/SPPlugins/ADMPlugin\.apl -- gen_context(system_u:object_r:textrel_shlib_t,s0)
-@@ -299,17 +311,155 @@ HOME_DIR/.mozilla/plugins/nprhapengine\.so.* -- gen_context(system_u:object_r:te
+@@ -299,17 +313,156 @@ HOME_DIR/.mozilla/plugins/nprhapengine\.so.* -- gen_context(system_u:object_r:te
#
/var/cache/ldconfig(/.*)? gen_context(system_u:object_r:ldconfig_cache_t,s0)
@@ -39871,6 +39969,7 @@ index 73bb3c0..4fef124 100644
+/usr/lib/httpd/modules/libphp5\.so -- gen_context(system_u:object_r:textrel_shlib_t,s0)
+')
+/opt/VBoxGuestAdditions.*/lib/VBox.*\.so -- gen_context(system_u:object_r:textrel_shlib_t,s0)
++/var/lib/VBoxGuestAdditions.*/lib/.*\.so -- gen_context(system_u:object_r:textrel_shlib_t,s0)
+
+/usr/lib/nmm/liba52\.so.* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
+/opt/lampp/lib/libct\.so.* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
@@ -48737,10 +48836,10 @@ index 0000000..16cd1ac
+')
diff --git a/policy/modules/system/systemd.te b/policy/modules/system/systemd.te
new file mode 100644
-index 0000000..bdd910a
+index 0000000..a111f4d
--- /dev/null
+++ b/policy/modules/system/systemd.te
-@@ -0,0 +1,958 @@
+@@ -0,0 +1,960 @@
+policy_module(systemd, 1.0.0)
+
+#######################################
@@ -49603,6 +49702,8 @@ index 0000000..bdd910a
+dev_write_kmsg(systemd_gpt_generator_t)
+dev_read_nvme(systemd_gpt_generator_t)
+
++fstools_exec(systemd_gpt_generator_t)
++
+storage_raw_read_fixed_disk(systemd_gpt_generator_t)
+storage_raw_read_removable_device(systemd_gpt_generator_t)
+
diff --git a/policy-rawhide-contrib.patch b/policy-rawhide-contrib.patch
index 9365dbb..769aeec 100644
--- a/policy-rawhide-contrib.patch
+++ b/policy-rawhide-contrib.patch
@@ -29712,7 +29712,7 @@ index 4498143..84a4858 100644
ftp_run_ftpdctl($1, $2)
')
diff --git a/ftp.te b/ftp.te
-index 36838c2..0a8b621 100644
+index 36838c2..21cc5ed 100644
--- a/ftp.te
+++ b/ftp.te
@@ -13,7 +13,7 @@ policy_module(ftp, 1.15.1)
@@ -29877,11 +29877,16 @@ index 36838c2..0a8b621 100644
miscfiles_read_public_files(ftpd_t)
seutil_dontaudit_search_config(ftpd_t)
-@@ -259,32 +228,50 @@ sysnet_use_ldap(ftpd_t)
+@@ -259,32 +228,55 @@ sysnet_use_ldap(ftpd_t)
userdom_dontaudit_use_unpriv_user_fds(ftpd_t)
userdom_dontaudit_search_user_home_dirs(ftpd_t)
+userdom_filetrans_home_content(ftpd_t)
++userdom_manage_user_home_content_dirs(ftpd_t)
++userdom_manage_user_home_content_files(ftpd_t)
++userdom_manage_user_tmp_dirs(ftpd_t)
++userdom_manage_user_tmp_files(ftpd_t)
++
-tunable_policy(`allow_ftpd_anon_write',`
+tunable_policy(`ftpd_anon_write',`
@@ -29935,7 +29940,7 @@ index 36838c2..0a8b621 100644
')
tunable_policy(`ftpd_use_passive_mode',`
-@@ -304,44 +291,24 @@ tunable_policy(`ftpd_connect_db',`
+@@ -304,44 +296,24 @@ tunable_policy(`ftpd_connect_db',`
corenet_sendrecv_mssql_client_packets(ftpd_t)
corenet_tcp_connect_mssql_port(ftpd_t)
corenet_tcp_sendrecv_mssql_port(ftpd_t)
@@ -29985,7 +29990,7 @@ index 36838c2..0a8b621 100644
corecmd_exec_shell(ftpd_t)
files_read_usr_files(ftpd_t)
-@@ -363,9 +330,8 @@ optional_policy(`
+@@ -363,9 +335,8 @@ optional_policy(`
optional_policy(`
selinux_validate_context(ftpd_t)
@@ -29996,7 +30001,7 @@ index 36838c2..0a8b621 100644
kerberos_use(ftpd_t)
')
-@@ -416,86 +382,39 @@ optional_policy(`
+@@ -416,86 +387,39 @@ optional_policy(`
#
stream_connect_pattern(ftpdctl_t, ftpd_var_run_t, ftpd_var_run_t, ftpd_t)
@@ -45893,7 +45898,7 @@ index dd8e01a..9cd6b0b 100644
##
##
diff --git a/logrotate.te b/logrotate.te
-index be0ab84..6f475e4 100644
+index be0ab84..9059174 100644
--- a/logrotate.te
+++ b/logrotate.te
@@ -5,16 +5,29 @@ policy_module(logrotate, 1.15.0)
@@ -45930,7 +45935,7 @@ index be0ab84..6f475e4 100644
type logrotate_lock_t;
files_lock_file(logrotate_lock_t)
-@@ -25,21 +38,30 @@ files_tmp_file(logrotate_tmp_t)
+@@ -25,21 +38,31 @@ files_tmp_file(logrotate_tmp_t)
type logrotate_var_lib_t;
files_type(logrotate_var_lib_t)
@@ -45964,10 +45969,11 @@ index be0ab84..6f475e4 100644
allow logrotate_t self:unix_dgram_socket sendto;
-allow logrotate_t self:unix_stream_socket { accept connectto listen };
+allow logrotate_t self:unix_stream_socket connectto;
++allow logrotate_t self:netlink_selinux_socket create_socket_perms;
allow logrotate_t self:shm create_shm_perms;
allow logrotate_t self:sem create_sem_perms;
allow logrotate_t self:msgq create_msgq_perms;
-@@ -48,36 +70,52 @@ allow logrotate_t self:msg { send receive };
+@@ -48,36 +71,52 @@ allow logrotate_t self:msg { send receive };
allow logrotate_t logrotate_lock_t:file manage_file_perms;
files_lock_filetrans(logrotate_t, logrotate_lock_t, file)
@@ -46025,7 +46031,7 @@ index be0ab84..6f475e4 100644
files_manage_generic_spool(logrotate_t)
files_manage_generic_spool_dirs(logrotate_t)
files_getattr_generic_locks(logrotate_t)
-@@ -95,32 +133,55 @@ mls_process_write_to_clearance(logrotate_t)
+@@ -95,32 +134,55 @@ mls_process_write_to_clearance(logrotate_t)
selinux_get_fs_mount(logrotate_t)
selinux_get_enforce_mode(logrotate_t)
@@ -46087,7 +46093,7 @@ index be0ab84..6f475e4 100644
')
optional_policy(`
-@@ -135,16 +196,17 @@ optional_policy(`
+@@ -135,16 +197,17 @@ optional_policy(`
optional_policy(`
apache_read_config(logrotate_t)
@@ -46107,7 +46113,7 @@ index be0ab84..6f475e4 100644
')
optional_policy(`
-@@ -170,6 +232,11 @@ optional_policy(`
+@@ -170,6 +233,11 @@ optional_policy(`
')
optional_policy(`
@@ -46119,7 +46125,7 @@ index be0ab84..6f475e4 100644
fail2ban_stream_connect(logrotate_t)
')
-@@ -178,7 +245,7 @@ optional_policy(`
+@@ -178,7 +246,7 @@ optional_policy(`
')
optional_policy(`
@@ -46128,7 +46134,7 @@ index be0ab84..6f475e4 100644
')
optional_policy(`
-@@ -198,17 +265,18 @@ optional_policy(`
+@@ -198,17 +266,18 @@ optional_policy(`
')
optional_policy(`
@@ -46150,7 +46156,7 @@ index be0ab84..6f475e4 100644
')
optional_policy(`
-@@ -216,6 +284,14 @@ optional_policy(`
+@@ -216,6 +285,14 @@ optional_policy(`
')
optional_policy(`
@@ -46165,7 +46171,7 @@ index be0ab84..6f475e4 100644
samba_exec_log(logrotate_t)
')
-@@ -228,26 +304,50 @@ optional_policy(`
+@@ -228,26 +305,50 @@ optional_policy(`
')
optional_policy(`
@@ -49861,10 +49867,10 @@ index 0000000..f5b98e6
+')
diff --git a/mock.te b/mock.te
new file mode 100644
-index 0000000..2d4fb00
+index 0000000..0dcf221
--- /dev/null
+++ b/mock.te
-@@ -0,0 +1,285 @@
+@@ -0,0 +1,286 @@
+policy_module(mock,1.0.0)
+
+##
@@ -50146,6 +50152,7 @@ index 0000000..2d4fb00
+
+term_use_all_inherited_terms(mock_build_t)
+userdom_use_inherited_user_ptys(mock_build_t)
++term_dontaudit_manage_pty_dirs(mock_build_t)
+
+tunable_policy(`mock_enable_homedirs',`
+ userdom_read_user_home_content_files(mock_build_t)
diff --git a/selinux-policy.spec b/selinux-policy.spec
index 287041e..927fb06 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: 204%{?dist}
+Release: 205%{?dist}
License: GPLv2+
Group: System Environment/Base
Source: serefpolicy-%{version}.tgz
@@ -648,6 +648,17 @@ exit 0
%endif
%changelog
+* Fri Jul 29 2016 Lukas Vrabec 3.13.1-205
+- Dontaudit mock_build_t can list all ptys.
+- Allow ftpd_t to mamange userhome data without any boolean.
+- Add logrotate permissions for creating netlink selinux sockets.
+- Add new MLS attribute to allow relabeling objects higher than system low. This exception is needed for package managers when processing sensitive data.
+- Label all VBox libraries stored in /var/lib/VBoxGuestAdditions/lib/ as textrel_shlib_t BZ(1356654)
+- Allow systemd gpt generator to run fstools BZ(1353585)
+- Label /usr/lib/systemd/libsystemd-shared-231.so as lib_t. BZ(1360716)
+- Allow gnome-keyring also manage user_tmp_t sockets.
+- Allow systemd to mounton /etc filesystem. BZ(1341753)
+
* Tue Jul 26 2016 Lukas Vrabec 3.13.1-204
- Allow lsmd_plugin_t to exec ldconfig.
- Allow vnstatd domain to read /sys/class/net/ files