From 9186dc57d98f2a160dd4699a5313c26af64d5959 Mon Sep 17 00:00:00 2001
From: Daniel J Walsh
Date: Fri, 30 Nov 2007 22:33:18 +0000
Subject: [PATCH] - Remove user based home directory separation
---
.cvsignore | 1 +
modules-targeted.conf | 7 -
...cy-20071114.patch => policy-20071130.patch | 4519 ++++++++++++-----
selinux-policy.spec | 11 +-
sources | 2 +-
5 files changed, 3269 insertions(+), 1271 deletions(-)
rename policy-20071114.patch => policy-20071130.patch (76%)
diff --git a/.cvsignore b/.cvsignore
index 12e05f0d..fc30bee1 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -129,3 +129,4 @@ serefpolicy-3.0.8.tgz
serefpolicy-3.1.0.tgz
serefpolicy-3.1.1.tgz
serefpolicy-3.1.2.tgz
+serefpolicy-3.2.1.tgz
diff --git a/modules-targeted.conf b/modules-targeted.conf
index 0b6299da..9f2cdf0f 100644
--- a/modules-targeted.conf
+++ b/modules-targeted.conf
@@ -1458,13 +1458,6 @@ amtu = module
#
zabbix = module
-# Layer: system
-# Module: fusermount
-#
-# File System in Userspace (FUSE) utilities
-#
-fusermount = base
-
# Layer: services
# Module: apcupsd
#
diff --git a/policy-20071114.patch b/policy-20071130.patch
similarity index 76%
rename from policy-20071114.patch
rename to policy-20071130.patch
index 7b0b3ee4..f1341a8d 100644
--- a/policy-20071114.patch
+++ b/policy-20071130.patch
@@ -1,6 +1,6 @@
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/default_contexts serefpolicy-3.1.2/config/appconfig-mcs/default_contexts
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/default_contexts serefpolicy-3.2.1/config/appconfig-mcs/default_contexts
--- nsaserefpolicy/config/appconfig-mcs/default_contexts 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/config/appconfig-mcs/default_contexts 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-mcs/default_contexts 2007-11-30 11:23:56.000000000 -0500
@@ -1,15 +1,9 @@
-system_r:crond_t:s0 user_r:user_crond_t:s0 staff_r:staff_crond_t:s0 sysadm_r:sysadm_crond_t:s0 system_r:system_crond_t:s0 unconfined_r:unconfined_crond_t:s0
-system_r:local_login_t:s0 user_r:user_t:s0 staff_r:staff_t:s0 sysadm_r:sysadm_t:s0 unconfined_r:unconfined_t:s0
@@ -26,23 +26,23 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/default
+system_r:sysadm_su_t:s0 system_r:unconfined_t:s0
+system_r:unconfined_t:s0 system_r:unconfined_t:s0
+system_r:xdm_t:s0 system_r:unconfined_t:s0
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/failsafe_context serefpolicy-3.1.2/config/appconfig-mcs/failsafe_context
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/failsafe_context serefpolicy-3.2.1/config/appconfig-mcs/failsafe_context
--- nsaserefpolicy/config/appconfig-mcs/failsafe_context 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/config/appconfig-mcs/failsafe_context 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-mcs/failsafe_context 2007-11-30 11:23:56.000000000 -0500
@@ -1 +1 @@
-sysadm_r:sysadm_t:s0
+system_r:unconfined_t:s0
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/guest_u_default_contexts serefpolicy-3.1.2/config/appconfig-mcs/guest_u_default_contexts
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/guest_u_default_contexts serefpolicy-3.2.1/config/appconfig-mcs/guest_u_default_contexts
--- nsaserefpolicy/config/appconfig-mcs/guest_u_default_contexts 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/config/appconfig-mcs/guest_u_default_contexts 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-mcs/guest_u_default_contexts 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,4 @@
+system_r:local_login_t:s0 guest_r:guest_t:s0
+system_r:remote_login_t:s0 guest_r:guest_t:s0
+system_r:sshd_t:s0 guest_r:guest_t:s0
+system_r:crond_t:s0 guest_r:guest_crond_t:s0
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/root_default_contexts serefpolicy-3.1.2/config/appconfig-mcs/root_default_contexts
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/root_default_contexts serefpolicy-3.2.1/config/appconfig-mcs/root_default_contexts
--- nsaserefpolicy/config/appconfig-mcs/root_default_contexts 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/config/appconfig-mcs/root_default_contexts 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-mcs/root_default_contexts 2007-11-30 11:23:56.000000000 -0500
@@ -1,11 +1,10 @@
-system_r:crond_t:s0 unconfined_r:unconfined_t:s0 sysadm_r:sysadm_crond_t:s0 staff_r:staff_crond_t:s0 user_r:user_crond_t:s0
-system_r:local_login_t:s0 unconfined_r:unconfined_t:s0 sysadm_r:sysadm_t:s0 staff_r:staff_t:s0 user_r:user_t:s0
@@ -62,23 +62,23 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/root_de
-#system_r:sshd_t:s0 unconfined_r:unconfined_t:s0 sysadm_r:sysadm_t:s0 staff_r:staff_t:s0 user_r:user_t:s0
+#system_r:sshd_t:s0 sysadm_r:sysadm_t:s0 staff_r:staff_t:s0 user_r:user_t:s0
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/seusers serefpolicy-3.1.2/config/appconfig-mcs/seusers
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/seusers serefpolicy-3.2.1/config/appconfig-mcs/seusers
--- nsaserefpolicy/config/appconfig-mcs/seusers 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/config/appconfig-mcs/seusers 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-mcs/seusers 2007-11-30 11:23:56.000000000 -0500
@@ -1,3 +1,2 @@
-system_u:system_u:s0-mcs_systemhigh
root:root:s0-mcs_systemhigh
-__default__:user_u:s0
+__default__:system_u:s0
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/userhelper_context serefpolicy-3.1.2/config/appconfig-mcs/userhelper_context
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/userhelper_context serefpolicy-3.2.1/config/appconfig-mcs/userhelper_context
--- nsaserefpolicy/config/appconfig-mcs/userhelper_context 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/config/appconfig-mcs/userhelper_context 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-mcs/userhelper_context 2007-11-30 11:23:56.000000000 -0500
@@ -1 +1 @@
-system_u:sysadm_r:sysadm_t:s0
+system_u:system_r:unconfined_t:s0
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/user_u_default_contexts serefpolicy-3.1.2/config/appconfig-mcs/user_u_default_contexts
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/user_u_default_contexts serefpolicy-3.2.1/config/appconfig-mcs/user_u_default_contexts
--- nsaserefpolicy/config/appconfig-mcs/user_u_default_contexts 2007-11-05 10:28:59.000000000 -0500
-+++ serefpolicy-3.1.2/config/appconfig-mcs/user_u_default_contexts 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-mcs/user_u_default_contexts 2007-11-30 11:23:56.000000000 -0500
@@ -1,8 +1,7 @@
-system_r:local_login_t:s0 user_r:user_t:s0
-system_r:remote_login_t:s0 user_r:user_t:s0
@@ -95,18 +95,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/user_u_
+system_r:xdm_t:s0 system_r:unconfined_t:s0 user_r:user_t:s0
+user_r:user_su_t:s0 system_r:unconfined_t:s0 user_r:user_t:s0
+user_r:user_sudo_t:s0 system_r:unconfined_t:s0 user_r:user_t:s0
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/xguest_u_default_contexts serefpolicy-3.1.2/config/appconfig-mcs/xguest_u_default_contexts
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mcs/xguest_u_default_contexts serefpolicy-3.2.1/config/appconfig-mcs/xguest_u_default_contexts
--- nsaserefpolicy/config/appconfig-mcs/xguest_u_default_contexts 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/config/appconfig-mcs/xguest_u_default_contexts 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-mcs/xguest_u_default_contexts 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,5 @@
+system_r:local_login_t xguest_r:xguest_t:s0
+system_r:remote_login_t xguest_r:xguest_t:s0
+system_r:sshd_t xguest_r:xguest_t:s0
+system_r:crond_t xguest_r:xguest_crond_t:s0
+system_r:xdm_t xguest_r:xguest_t:s0
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mls/default_contexts serefpolicy-3.1.2/config/appconfig-mls/default_contexts
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mls/default_contexts serefpolicy-3.2.1/config/appconfig-mls/default_contexts
--- nsaserefpolicy/config/appconfig-mls/default_contexts 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/config/appconfig-mls/default_contexts 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-mls/default_contexts 2007-11-30 11:23:56.000000000 -0500
@@ -1,15 +1,12 @@
-system_r:crond_t:s0 user_r:user_crond_t:s0 staff_r:staff_crond_t:s0 sysadm_r:sysadm_crond_t:s0 system_r:system_crond_t:s0 unconfined_r:unconfined_crond_t:s0
-system_r:local_login_t:s0 user_r:user_t:s0 staff_r:staff_t:s0 sysadm_r:sysadm_t:s0 unconfined_r:unconfined_t:s0
@@ -134,34 +134,34 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mls/default
-user_r:user_sudo_t:s0 sysadm_r:sysadm_t:s0 user_r:user_t:s0
+staff_r:staff_sudo_t:s0 sysadm_r:sysadm_t:s0 staff_r:staff_t:s0
+user_r:user_sudo_t:s0 sysadm_r:sysadm_t:s0 user_r:user_t:s0
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mls/guest_u_default_contexts serefpolicy-3.1.2/config/appconfig-mls/guest_u_default_contexts
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-mls/guest_u_default_contexts serefpolicy-3.2.1/config/appconfig-mls/guest_u_default_contexts
--- nsaserefpolicy/config/appconfig-mls/guest_u_default_contexts 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/config/appconfig-mls/guest_u_default_contexts 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-mls/guest_u_default_contexts 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,4 @@
+system_r:local_login_t:s0 guest_r:guest_t:s0
+system_r:remote_login_t:s0 guest_r:guest_t:s0
+system_r:sshd_t:s0 guest_r:guest_t:s0
+system_r:crond_t:s0 guest_r:guest_crond_t:s0
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-standard/guest_u_default_contexts serefpolicy-3.1.2/config/appconfig-standard/guest_u_default_contexts
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-standard/guest_u_default_contexts serefpolicy-3.2.1/config/appconfig-standard/guest_u_default_contexts
--- nsaserefpolicy/config/appconfig-standard/guest_u_default_contexts 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/config/appconfig-standard/guest_u_default_contexts 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-standard/guest_u_default_contexts 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,4 @@
+system_r:local_login_t guest_r:guest_t
+system_r:remote_login_t guest_r:guest_t
+system_r:sshd_t guest_r:guest_t
+system_r:crond_t guest_r:guest_crond_t
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-standard/xguest_u_default_contexts serefpolicy-3.1.2/config/appconfig-standard/xguest_u_default_contexts
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/config/appconfig-standard/xguest_u_default_contexts serefpolicy-3.2.1/config/appconfig-standard/xguest_u_default_contexts
--- nsaserefpolicy/config/appconfig-standard/xguest_u_default_contexts 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/config/appconfig-standard/xguest_u_default_contexts 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/config/appconfig-standard/xguest_u_default_contexts 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,5 @@
+system_r:local_login_t xguest_r:xguest_t
+system_r:remote_login_t xguest_r:xguest_t
+system_r:sshd_t xguest_r:xguest_t
+system_r:crond_t xguest_r:xguest_crond_t
+system_r:xdm_t xguest_r:xguest_t
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/flask/access_vectors serefpolicy-3.1.2/policy/flask/access_vectors
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/flask/access_vectors serefpolicy-3.2.1/policy/flask/access_vectors
--- nsaserefpolicy/policy/flask/access_vectors 2007-08-11 06:22:29.000000000 -0400
-+++ serefpolicy-3.1.2/policy/flask/access_vectors 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/flask/access_vectors 2007-11-30 11:23:56.000000000 -0500
@@ -639,6 +639,8 @@
send
recv
@@ -171,9 +171,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/flask/access_vectors
}
class key
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/global_tunables serefpolicy-3.1.2/policy/global_tunables
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/global_tunables serefpolicy-3.2.1/policy/global_tunables
--- nsaserefpolicy/policy/global_tunables 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/global_tunables 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/global_tunables 2007-11-30 11:23:56.000000000 -0500
@@ -6,38 +6,35 @@
##
@@ -257,9 +257,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/global_tunables seref
+gen_tunable(allow_console_login,false)
+
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/alsa.fc serefpolicy-3.1.2/policy/modules/admin/alsa.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/alsa.fc serefpolicy-3.2.1/policy/modules/admin/alsa.fc
--- nsaserefpolicy/policy/modules/admin/alsa.fc 2007-10-29 18:02:32.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/alsa.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/alsa.fc 2007-11-30 11:23:56.000000000 -0500
@@ -1,8 +1,11 @@
+/etc/alsa/asound\.state -- gen_context(system_u:object_r:alsa_etc_rw_t,s0)
@@ -274,9 +274,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/alsa.fc
+/sbin/salsa -- gen_context(system_u:object_r:alsa_exec_t,s0)
+/var/lib/alsa(/.*)? gen_context(system_u:object_r:alsa_var_lib_t,s0)
+/bin/alsaunmute -- gen_context(system_u:object_r:alsa_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/alsa.if serefpolicy-3.1.2/policy/modules/admin/alsa.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/alsa.if serefpolicy-3.2.1/policy/modules/admin/alsa.if
--- nsaserefpolicy/policy/modules/admin/alsa.if 2007-01-02 12:57:51.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/admin/alsa.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/alsa.if 2007-11-30 11:23:56.000000000 -0500
@@ -74,3 +74,21 @@
read_files_pattern($1,alsa_etc_rw_t,alsa_etc_rw_t)
read_lnk_files_pattern($1,alsa_etc_rw_t,alsa_etc_rw_t)
@@ -299,9 +299,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/alsa.if
+
+ read_files_pattern($1,alsa_var_lib_t,alsa_var_lib_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/alsa.te serefpolicy-3.1.2/policy/modules/admin/alsa.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/alsa.te serefpolicy-3.2.1/policy/modules/admin/alsa.te
--- nsaserefpolicy/policy/modules/admin/alsa.te 2007-10-29 18:02:32.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/alsa.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/alsa.te 2007-11-30 11:23:56.000000000 -0500
@@ -8,12 +8,15 @@
type alsa_t;
@@ -346,9 +346,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/alsa.te
optional_policy(`
nscd_socket_use(alsa_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/anaconda.te serefpolicy-3.1.2/policy/modules/admin/anaconda.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/anaconda.te serefpolicy-3.2.1/policy/modules/admin/anaconda.te
--- nsaserefpolicy/policy/modules/admin/anaconda.te 2007-01-02 12:57:51.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/admin/anaconda.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/anaconda.te 2007-11-30 11:23:56.000000000 -0500
@@ -31,16 +31,13 @@
modutils_domtrans_insmod(anaconda_t)
@@ -367,43 +367,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/anacond
kudzu_domtrans(anaconda_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/brctl.if serefpolicy-3.1.2/policy/modules/admin/brctl.if
---- nsaserefpolicy/policy/modules/admin/brctl.if 2007-09-05 15:24:45.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/brctl.if 2007-11-26 16:40:13.000000000 -0500
-@@ -17,3 +17,21 @@
-
- domtrans_pattern($1,brctl_exec_t,brctl_t)
- ')
-+
-+########################################
-+##
-+## Get attributes brctl executable.
-+##
-+##
-+##
-+## Domain allowed to transition.
-+##
-+##
-+#
-+interface(`brctl_getattr',`
-+ gen_require(`
-+ type brctl_exec_t;
-+ ')
-+
-+ allow $1 brctl_exec_t:file getattr;
-+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/brctl.te serefpolicy-3.1.2/policy/modules/admin/brctl.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/brctl.te serefpolicy-3.2.1/policy/modules/admin/brctl.te
--- nsaserefpolicy/policy/modules/admin/brctl.te 2007-10-23 07:37:52.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/brctl.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/brctl.te 2007-11-30 11:23:56.000000000 -0500
@@ -40,4 +40,5 @@
optional_policy(`
xen_append_log(brctl_t)
+ xen_dontaudit_rw_unix_stream_sockets(brctl_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/consoletype.te serefpolicy-3.1.2/policy/modules/admin/consoletype.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/consoletype.te serefpolicy-3.2.1/policy/modules/admin/consoletype.te
--- nsaserefpolicy/policy/modules/admin/consoletype.te 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/consoletype.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/consoletype.te 2007-11-30 11:44:01.000000000 -0500
@@ -8,9 +8,11 @@
type consoletype_t;
@@ -445,18 +420,14 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/console
logrotate_dontaudit_use_fds(consoletype_t)
')
-@@ -115,3 +121,8 @@
+@@ -115,3 +121,4 @@
xen_dontaudit_rw_unix_stream_sockets(consoletype_t)
xen_dontaudit_use_fds(consoletype_t)
')
+
-+optional_policy(`
-+ unconfined_use_terminals(consoletype_t)
-+ unconfined_dontaudit_rw_pipes(consoletype_t)
-+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/firstboot.te serefpolicy-3.1.2/policy/modules/admin/firstboot.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/firstboot.te serefpolicy-3.2.1/policy/modules/admin/firstboot.te
--- nsaserefpolicy/policy/modules/admin/firstboot.te 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/firstboot.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/firstboot.te 2007-11-30 11:23:56.000000000 -0500
@@ -120,6 +120,10 @@
usermanage_domtrans_admin_passwd(firstboot_t)
')
@@ -476,18 +447,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/firstbo
- domain_auto_trans(firstboot_t, xserver_exec_t, xdm_xserver_t)
-')
') dnl end TODO
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kismet.fc serefpolicy-3.1.2/policy/modules/admin/kismet.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kismet.fc serefpolicy-3.2.1/policy/modules/admin/kismet.fc
--- nsaserefpolicy/policy/modules/admin/kismet.fc 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/admin/kismet.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/kismet.fc 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,5 @@
+
+/usr/bin/kismet -- gen_context(system_u:object_r:kismet_exec_t,s0)
+/var/run/kismet_server.pid -- gen_context(system_u:object_r:kismet_var_run_t,s0)
+/var/lib/kismet(/.*)? gen_context(system_u:object_r:kismet_var_lib_t,s0)
+/var/log/kismet(/.*)? gen_context(system_u:object_r:kismet_log_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kismet.if serefpolicy-3.1.2/policy/modules/admin/kismet.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kismet.if serefpolicy-3.2.1/policy/modules/admin/kismet.if
--- nsaserefpolicy/policy/modules/admin/kismet.if 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/admin/kismet.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/kismet.if 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,275 @@
+
+## policy for kismet
@@ -764,9 +735,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kismet.
+ kismet_manage_log($2)
+
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kismet.te serefpolicy-3.1.2/policy/modules/admin/kismet.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kismet.te serefpolicy-3.2.1/policy/modules/admin/kismet.te
--- nsaserefpolicy/policy/modules/admin/kismet.te 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/admin/kismet.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/kismet.te 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,58 @@
+policy_module(kismet,1.0.0)
+
@@ -826,9 +797,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kismet.
+allow kismet_t kismet_log_t:dir { rw_dir_perms setattr };
+logging_log_filetrans(kismet_t,kismet_log_t,{ file dir })
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kudzu.te serefpolicy-3.1.2/policy/modules/admin/kudzu.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kudzu.te serefpolicy-3.2.1/policy/modules/admin/kudzu.te
--- nsaserefpolicy/policy/modules/admin/kudzu.te 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/kudzu.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/kudzu.te 2007-11-30 11:35:54.000000000 -0500
@@ -21,8 +21,8 @@
# Local policy
#
@@ -857,17 +828,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kudzu.t
# kudzu will telinit to make init re-read
# the inittab after configuring serial consoles
init_telinit(kudzu_t)
-@@ -134,36 +137,13 @@
- ')
-
+@@ -140,30 +143,3 @@
optional_policy(`
-- seutil_sigchld_newrole(kudzu_t)
-+ rhgb_use_ptys(kudzu_t)
+ udev_read_db(kudzu_t)
')
-
- optional_policy(`
-- udev_read_db(kudzu_t)
--')
-
-optional_policy(`
- # cjp: this was originally in the else block
@@ -876,9 +840,8 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kudzu.t
- # blocks curently do not work in the
- # else block of optionals
- unconfined_domain(kudzu_t)
-+ seutil_sigchld_newrole(kudzu_t)
- ')
-
+-')
+-
-ifdef(`TODO',`
-allow kudzu_t modules_conf_t:file unlink;
-optional_policy(`
@@ -887,7 +850,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kudzu.t
-optional_policy(`
- allow kudzu_t xserver_exec_t:file getattr;
-')
- optional_policy(`
+-optional_policy(`
- allow kudzu_t rhgb_t:unix_stream_socket connectto;
-')
-optional_policy(`
@@ -895,11 +858,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/kudzu.t
- domain_auto_trans(kudzu_t, userhelper_exec_t, sysadm_userhelper_t)
-')
-allow kudzu_t cupsd_rw_etc_t:dir list_dir_perms;
-+ udev_read_db(kudzu_t)
- ')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/logrotate.te serefpolicy-3.1.2/policy/modules/admin/logrotate.te
+-')
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/logrotate.te serefpolicy-3.2.1/policy/modules/admin/logrotate.te
--- nsaserefpolicy/policy/modules/admin/logrotate.te 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/logrotate.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/logrotate.te 2007-11-30 11:23:56.000000000 -0500
@@ -96,6 +96,7 @@
files_read_etc_files(logrotate_t)
files_read_etc_runtime_files(logrotate_t)
@@ -908,9 +870,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/logrota
# Write to /var/spool/slrnpull - should be moved into its own type.
files_manage_generic_spool(logrotate_t)
files_manage_generic_spool_dirs(logrotate_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/logwatch.te serefpolicy-3.1.2/policy/modules/admin/logwatch.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/logwatch.te serefpolicy-3.2.1/policy/modules/admin/logwatch.te
--- nsaserefpolicy/policy/modules/admin/logwatch.te 2007-10-23 07:37:52.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/logwatch.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/logwatch.te 2007-11-30 11:23:56.000000000 -0500
@@ -59,10 +59,8 @@
files_read_usr_files(logwatch_t)
files_search_spool(logwatch_t)
@@ -939,21 +901,13 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/logwatc
samba_read_log(logwatch_t)
+ samba_read_share_files(logwatch_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/netutils.te serefpolicy-3.1.2/policy/modules/admin/netutils.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/netutils.te serefpolicy-3.2.1/policy/modules/admin/netutils.te
--- nsaserefpolicy/policy/modules/admin/netutils.te 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/netutils.te 2007-11-26 16:40:13.000000000 -0500
-@@ -94,6 +94,18 @@
++++ serefpolicy-3.2.1/policy/modules/admin/netutils.te 2007-11-30 11:37:19.000000000 -0500
+@@ -94,6 +94,10 @@
')
optional_policy(`
-+ rhgb_use_ptys(netutils_t)
-+')
-+
-+optional_policy(`
-+ unconfined_dontaudit_use_terminals(netutils_t)
-+')
-+
-+optional_policy(`
+ vmware_append_log(netutils_t)
+')
+
@@ -961,12 +915,11 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/netutil
xen_append_log(netutils_t)
')
-@@ -107,12 +119,15 @@
+@@ -107,12 +111,14 @@
allow ping_t self:tcp_socket create_socket_perms;
allow ping_t self:rawip_socket { create ioctl read write bind getopt setopt };
allow ping_t self:packet_socket { create ioctl read write bind getopt setopt };
+allow ping_t self:netlink_route_socket create_netlink_socket_perms;
-+allow ping_t self:netlink_route_socket r_netlink_socket_perms;
corenet_all_recvfrom_unlabeled(ping_t)
corenet_all_recvfrom_netlabel(ping_t)
@@ -977,9 +930,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/netutil
corenet_tcp_sendrecv_all_nodes(ping_t)
corenet_tcp_sendrecv_all_ports(ping_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/prelink.te serefpolicy-3.1.2/policy/modules/admin/prelink.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/prelink.te serefpolicy-3.2.1/policy/modules/admin/prelink.te
--- nsaserefpolicy/policy/modules/admin/prelink.te 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/prelink.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/prelink.te 2007-11-30 11:23:56.000000000 -0500
@@ -26,7 +26,7 @@
# Local policy
#
@@ -1037,9 +990,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/prelink
+optional_policy(`
+ unconfined_domain(prelink_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/rpm.fc serefpolicy-3.1.2/policy/modules/admin/rpm.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/rpm.fc serefpolicy-3.2.1/policy/modules/admin/rpm.fc
--- nsaserefpolicy/policy/modules/admin/rpm.fc 2006-11-16 17:15:26.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/admin/rpm.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/rpm.fc 2007-11-30 11:23:56.000000000 -0500
@@ -11,6 +11,7 @@
/usr/sbin/system-install-packages -- gen_context(system_u:object_r:rpm_exec_t,s0)
@@ -1058,9 +1011,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/rpm.fc
')
/var/lib/alternatives(/.*)? gen_context(system_u:object_r:rpm_var_lib_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/rpm.if serefpolicy-3.1.2/policy/modules/admin/rpm.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/rpm.if serefpolicy-3.2.1/policy/modules/admin/rpm.if
--- nsaserefpolicy/policy/modules/admin/rpm.if 2007-05-18 11:12:44.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/rpm.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/rpm.if 2007-11-30 11:23:56.000000000 -0500
@@ -152,6 +152,24 @@
########################################
@@ -1254,9 +1207,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/rpm.if
+ read_lnk_files_pattern($1,rpm_tmpfs_t,rpm_tmpfs_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/rpm.te serefpolicy-3.1.2/policy/modules/admin/rpm.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/rpm.te serefpolicy-3.2.1/policy/modules/admin/rpm.te
--- nsaserefpolicy/policy/modules/admin/rpm.te 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/rpm.te 2007-11-28 10:57:00.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/rpm.te 2007-11-30 11:23:56.000000000 -0500
@@ -139,6 +139,7 @@
auth_relabel_all_files_except_shadow(rpm_t)
auth_manage_all_files_except_shadow(rpm_t)
@@ -1322,9 +1275,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/rpm.te
tzdata_domtrans(rpm_t)
tzdata_domtrans(rpm_script_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/sudo.if serefpolicy-3.1.2/policy/modules/admin/sudo.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/sudo.if serefpolicy-3.2.1/policy/modules/admin/sudo.if
--- nsaserefpolicy/policy/modules/admin/sudo.if 2007-07-23 10:20:14.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/sudo.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/sudo.if 2007-11-30 11:23:56.000000000 -0500
@@ -55,7 +55,7 @@
#
@@ -1404,9 +1357,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/sudo.if
-
- ') dnl end TODO
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/su.if serefpolicy-3.1.2/policy/modules/admin/su.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/su.if serefpolicy-3.2.1/policy/modules/admin/su.if
--- nsaserefpolicy/policy/modules/admin/su.if 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/su.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/su.if 2007-11-30 11:23:56.000000000 -0500
@@ -41,12 +41,11 @@
allow $2 $1_su_t:process signal;
@@ -1491,18 +1444,24 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/su.if s
logging_send_syslog_msg($1_su_t)
miscfiles_read_localization($1_su_t)
-@@ -295,6 +297,8 @@
+@@ -295,13 +297,7 @@
xserver_domtrans_user_xauth($1, $1_su_t)
')
+- ifdef(`TODO',`
+- allow $1_su_t $1_home_t:file manage_file_perms;
+-
+- # Access sshd cookie files.
+- allow $1_su_t sshd_tmp_t:file rw_file_perms;
+- file_type_auto_trans($1_su_t, sshd_tmp_t, $1_tmp_t)
+- ') dnl end TODO
+ userdom_search_all_users_home_dirs($1_su_t)
-+
- ifdef(`TODO',`
- allow $1_su_t $1_home_t:file manage_file_perms;
+ ')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/tmpreaper.te serefpolicy-3.1.2/policy/modules/admin/tmpreaper.te
+ #######################################
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/tmpreaper.te serefpolicy-3.2.1/policy/modules/admin/tmpreaper.te
--- nsaserefpolicy/policy/modules/admin/tmpreaper.te 2007-10-02 09:54:52.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/tmpreaper.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/tmpreaper.te 2007-11-30 11:23:56.000000000 -0500
@@ -28,6 +28,7 @@
files_purge_tmp(tmpreaper_t)
# why does it need setattr?
@@ -1522,9 +1481,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/tmpreap
lpd_manage_spool(tmpreaper_t)
')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/usermanage.te serefpolicy-3.1.2/policy/modules/admin/usermanage.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/usermanage.te serefpolicy-3.2.1/policy/modules/admin/usermanage.te
--- nsaserefpolicy/policy/modules/admin/usermanage.te 2007-10-23 07:37:52.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/usermanage.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/usermanage.te 2007-11-30 13:59:13.000000000 -0500
@@ -92,7 +92,9 @@
dev_read_urand(chfn_t)
@@ -1562,7 +1521,15 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/userman
# allow checking if a shell is executable
corecmd_check_exec_shell(passwd_t)
-@@ -335,11 +331,6 @@
+@@ -315,6 +311,7 @@
+ # /usr/bin/passwd asks for w access to utmp, but it will operate
+ # correctly without it. Do not audit write denials to utmp.
+ init_dontaudit_rw_utmp(passwd_t)
++init_use_fds(passwd_t)
+
+ libs_use_ld_so(passwd_t)
+ libs_use_shared_libs(passwd_t)
+@@ -335,11 +332,6 @@
userdom_dontaudit_search_all_users_home_content(passwd_t)
optional_policy(`
@@ -1574,7 +1541,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/userman
nscd_domtrans(passwd_t)
')
-@@ -393,6 +384,7 @@
+@@ -393,6 +385,7 @@
auth_manage_shadow(sysadm_passwd_t)
auth_relabel_shadow(sysadm_passwd_t)
auth_etc_filetrans_shadow(sysadm_passwd_t)
@@ -1582,7 +1549,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/userman
# allow vipw to exec the editor
corecmd_exec_bin(sysadm_passwd_t)
-@@ -426,11 +418,6 @@
+@@ -426,11 +419,6 @@
userdom_dontaudit_search_all_users_home_content(sysadm_passwd_t)
optional_policy(`
@@ -1594,7 +1561,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/userman
nscd_domtrans(sysadm_passwd_t)
')
-@@ -533,6 +520,12 @@
+@@ -533,6 +521,12 @@
')
optional_policy(`
@@ -1607,18 +1574,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/userman
rpm_use_fds(useradd_t)
rpm_rw_pipes(useradd_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/vpn.fc serefpolicy-3.1.2/policy/modules/admin/vpn.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/vpn.fc serefpolicy-3.2.1/policy/modules/admin/vpn.fc
--- nsaserefpolicy/policy/modules/admin/vpn.fc 2006-11-16 17:15:26.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/admin/vpn.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/vpn.fc 2007-11-30 11:23:56.000000000 -0500
@@ -7,3 +7,5 @@
# sbin
#
/sbin/vpnc -- gen_context(system_u:object_r:vpnc_exec_t,s0)
+
+/var/run/vpnc(/.*)? gen_context(system_u:object_r:vpnc_var_run_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/vpn.if serefpolicy-3.1.2/policy/modules/admin/vpn.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/vpn.if serefpolicy-3.2.1/policy/modules/admin/vpn.if
--- nsaserefpolicy/policy/modules/admin/vpn.if 2007-01-02 12:57:51.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/admin/vpn.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/vpn.if 2007-11-30 11:23:56.000000000 -0500
@@ -67,3 +67,25 @@
allow $1 vpnc_t:process signal;
@@ -1645,9 +1612,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/vpn.if
+ allow vpnc_t $1:dbus send_msg;
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/vpn.te serefpolicy-3.1.2/policy/modules/admin/vpn.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/vpn.te serefpolicy-3.2.1/policy/modules/admin/vpn.te
--- nsaserefpolicy/policy/modules/admin/vpn.te 2007-10-29 07:52:50.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/admin/vpn.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/admin/vpn.te 2007-11-30 11:23:56.000000000 -0500
@@ -22,7 +22,7 @@
# Local policy
#
@@ -1692,10 +1659,36 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/vpn.te
sysnet_etc_filetrans_config(vpnc_t)
sysnet_manage_config(vpnc_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/ethereal.if serefpolicy-3.1.2/policy/modules/apps/ethereal.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/ethereal.fc serefpolicy-3.2.1/policy/modules/apps/ethereal.fc
+--- nsaserefpolicy/policy/modules/apps/ethereal.fc 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/ethereal.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,4 +1,4 @@
+-HOME_DIR/\.ethereal(/.*)? gen_context(system_u:object_r:ROLE_ethereal_home_t,s0)
++HOME_DIR/\.ethereal(/.*)? gen_context(system_u:object_r:user_ethereal_home_t,s0)
+
+ /usr/sbin/ethereal.* -- gen_context(system_u:object_r:ethereal_exec_t,s0)
+ /usr/sbin/tethereal.* -- gen_context(system_u:object_r:tethereal_exec_t,s0)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/ethereal.if serefpolicy-3.2.1/policy/modules/apps/ethereal.if
--- nsaserefpolicy/policy/modules/apps/ethereal.if 2007-07-23 10:20:12.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/ethereal.if 2007-11-26 16:40:13.000000000 -0500
-@@ -163,17 +163,6 @@
++++ serefpolicy-3.2.1/policy/modules/apps/ethereal.if 2007-11-30 11:23:56.000000000 -0500
+@@ -48,12 +48,10 @@
+ application_domain($1_ethereal_t,ethereal_exec_t)
+ role $3 types $1_ethereal_t;
+
+- type $1_ethereal_home_t alias $1_ethereal_rw_t;
+- files_poly_member($1_ethereal_home_t)
+- userdom_user_home_content($1,$1_ethereal_home_t)
+-
+- type $1_ethereal_tmp_t;
+- files_tmp_file($1_ethereal_tmp_t)
++ ifelse(`$1',`user',`',`
++ typealias user_ethereal_home_t alias $1_ethereal_home_t;
++ typealias user_ethereal_tmp_t alias $1_ethereal_tmp_t;
++ ')
+
+ type $1_ethereal_tmpfs_t;
+ files_tmpfs_file($1_ethereal_tmpfs_t)
+@@ -163,17 +161,6 @@
xserver_create_xdm_tmp_sockets($1_ethereal_t)
')
@@ -1713,23 +1706,148 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/ethereal
')
#######################################
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.fc serefpolicy-3.1.2/policy/modules/apps/gnome.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/ethereal.te serefpolicy-3.2.1/policy/modules/apps/ethereal.te
+--- nsaserefpolicy/policy/modules/apps/ethereal.te 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/ethereal.te 2007-11-30 11:23:56.000000000 -0500
+@@ -16,6 +16,13 @@
+ type tethereal_tmp_t;
+ files_tmp_file(tethereal_tmp_t)
+
++type user_ethereal_home_t;
++files_poly_member(user_ethereal_home_t)
++userdom_user_home_content(user,user_ethereal_home_t)
++
++type user_ethereal_tmp_t;
++files_tmp_file(user_ethereal_tmp_t)
++
+ ########################################
+ #
+ # Tethereal policy
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/evolution.fc serefpolicy-3.2.1/policy/modules/apps/evolution.fc
+--- nsaserefpolicy/policy/modules/apps/evolution.fc 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/evolution.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -2,13 +2,13 @@
+ # HOME_DIR/
+ #
+
+-HOME_DIR/\.camel_certs(/.*)? gen_context(system_u:object_r:ROLE_evolution_home_t,s0)
+-HOME_DIR/\.evolution(/.*)? gen_context(system_u:object_r:ROLE_evolution_home_t,s0)
++HOME_DIR/\.camel_certs(/.*)? gen_context(system_u:object_r:user_evolution_home_t,s0)
++HOME_DIR/\.evolution(/.*)? gen_context(system_u:object_r:user_evolution_home_t,s0)
+
+ #
+ # /tmp
+ #
+-/tmp/\.exchange-USER(/.*)? gen_context(system_u:object_r:ROLE_evolution_exchange_tmp_t,s0)
++/tmp/\.exchange-USER(/.*)? gen_context(system_u:object_r:user_evolution_exchange_tmp_t,s0)
+
+ #
+ # /usr
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gift.fc serefpolicy-3.2.1/policy/modules/apps/gift.fc
+--- nsaserefpolicy/policy/modules/apps/gift.fc 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/gift.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,4 +1,4 @@
+-HOME_DIR/\.giFT(/.*)? gen_context(system_u:object_r:ROLE_gift_home_t,s0)
++HOME_DIR/\.giFT(/.*)? gen_context(system_u:object_r:user_gift_home_t,s0)
+
+ /usr/(local/)?bin/apollon -- gen_context(system_u:object_r:gift_exec_t,s0)
+ /usr/(local/)?bin/giftd -- gen_context(system_u:object_r:giftd_exec_t,s0)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gift.if serefpolicy-3.2.1/policy/modules/apps/gift.if
+--- nsaserefpolicy/policy/modules/apps/gift.if 2007-07-23 10:20:12.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/gift.if 2007-11-30 11:23:56.000000000 -0500
+@@ -43,9 +43,9 @@
+ application_domain($1_gift_t,gift_exec_t)
+ role $3 types $1_gift_t;
+
+- type $1_gift_home_t alias $1_gift_rw_t;
+- files_poly_member($1_gift_home_t)
+- userdom_user_home_content($1,$1_gift_home_t)
++ ifelse(`$1',`user',`',`
++ typealias user_gift_home_t alias $1_gift_home_t;
++ ')
+
+ type $1_gift_tmpfs_t;
+ files_tmpfs_file($1_gift_tmpfs_t)
+@@ -67,10 +67,10 @@
+ manage_sock_files_pattern($1_gift_t,$1_gift_tmpfs_t,$1_gift_tmpfs_t)
+ fs_tmpfs_filetrans($1_gift_t,$1_gift_tmpfs_t,{ dir file lnk_file sock_file fifo_file })
+
+- manage_dirs_pattern($1_gift_t,$1_gift_home_t,$1_gift_home_t)
+- manage_files_pattern($1_gift_t,$1_gift_home_t,$1_gift_home_t)
+- manage_lnk_files_pattern($1_gift_t,$1_gift_home_t,$1_gift_home_t)
+- userdom_user_home_dir_filetrans($1,$1_gift_t,$1_gift_home_t,dir)
++ manage_dirs_pattern($1_gift_t,user_gift_home_t,user_gift_home_t)
++ manage_files_pattern($1_gift_t,user_gift_home_t,user_gift_home_t)
++ manage_lnk_files_pattern($1_gift_t,user_gift_home_t,user_gift_home_t)
++ userdom_user_home_dir_filetrans($1,$1_gift_t,user_gift_home_t,dir)
+
+ # Launch gift daemon
+ domtrans_pattern($1_gift_t, giftd_exec_t, $1_giftd_t)
+@@ -79,12 +79,12 @@
+ domtrans_pattern($2, gift_exec_t, $1_gift_t)
+
+ # user managed content
+- manage_dirs_pattern($2,$1_gift_home_t,$1_gift_home_t)
+- manage_files_pattern($2,$1_gift_home_t,$1_gift_home_t)
+- manage_lnk_files_pattern($2,$1_gift_home_t,$1_gift_home_t)
+- relabel_dirs_pattern($2,$1_gift_home_t,$1_gift_home_t)
+- relabel_files_pattern($2,$1_gift_home_t,$1_gift_home_t)
+- relabel_lnk_files_pattern($2,$1_gift_home_t,$1_gift_home_t)
++ manage_dirs_pattern($2,user_gift_home_t,user_gift_home_t)
++ manage_files_pattern($2,user_gift_home_t,user_gift_home_t)
++ manage_lnk_files_pattern($2,user_gift_home_t,user_gift_home_t)
++ relabel_dirs_pattern($2,user_gift_home_t,user_gift_home_t)
++ relabel_files_pattern($2,user_gift_home_t,user_gift_home_t)
++ relabel_lnk_files_pattern($2,user_gift_home_t,user_gift_home_t)
+
+ # Allow the user domain to signal/ps.
+ ps_process_pattern($2,$1_gift_t)
+@@ -143,10 +143,10 @@
+ allow $1_giftd_t self:tcp_socket create_stream_socket_perms;
+ allow $1_giftd_t self:udp_socket create_socket_perms;
+
+- manage_dirs_pattern($1_giftd_t,$1_gift_home_t,$1_gift_home_t)
+- manage_files_pattern($1_giftd_t,$1_gift_home_t,$1_gift_home_t)
+- manage_lnk_files_pattern($1_giftd_t,$1_gift_home_t,$1_gift_home_t)
+- userdom_user_home_dir_filetrans($1,$1_giftd_t,$1_gift_home_t,dir)
++ manage_dirs_pattern($1_giftd_t,user_gift_home_t,user_gift_home_t)
++ manage_files_pattern($1_giftd_t,user_gift_home_t,user_gift_home_t)
++ manage_lnk_files_pattern($1_giftd_t,user_gift_home_t,user_gift_home_t)
++ userdom_user_home_dir_filetrans($1,$1_giftd_t,user_gift_home_t,dir)
+
+ domtrans_pattern($2, giftd_exec_t, $1_giftd_t)
+
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gift.te serefpolicy-3.2.1/policy/modules/apps/gift.te
+--- nsaserefpolicy/policy/modules/apps/gift.te 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/gift.te 2007-11-30 11:23:56.000000000 -0500
+@@ -11,3 +11,7 @@
+
+ type giftd_exec_t;
+ application_executable_file(giftd_exec_t)
++
++type user_gift_home_t alias user_gift_rw_t;
++userdom_user_home_content(user,user_gift_home_t)
++
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.fc serefpolicy-3.2.1/policy/modules/apps/gnome.fc
--- nsaserefpolicy/policy/modules/apps/gnome.fc 2007-10-12 08:56:02.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/gnome.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/gnome.fc 2007-11-30 11:23:56.000000000 -0500
@@ -1,8 +1,7 @@
-+HOME_DIR/.gnome2(/.*)? gen_context(system_u:object_r:ROLE_gnome_home_t,s0)
- HOME_DIR/\.config/gtk-.* gen_context(system_u:object_r:ROLE_gnome_home_t,s0)
- HOME_DIR/\.gconf(d)?(/.*)? gen_context(system_u:object_r:ROLE_gconf_home_t,s0)
+-HOME_DIR/\.config/gtk-.* gen_context(system_u:object_r:ROLE_gnome_home_t,s0)
+-HOME_DIR/\.gconf(d)?(/.*)? gen_context(system_u:object_r:ROLE_gconf_home_t,s0)
++HOME_DIR/.gnome2(/.*)? gen_context(system_u:object_r:user_gnome_home_t,s0)
++HOME_DIR/\.config/gtk-.* gen_context(system_u:object_r:user_gnome_home_t,s0)
++HOME_DIR/\.gconf(d)?(/.*)? gen_context(system_u:object_r:user_gconf_home_t,s0)
-/etc/gconf(/.*)? gen_context(system_u:object_r:gconf_etc_t,s0)
-
- /tmp/gconfd-USER/.* -- gen_context(system_u:object_r:ROLE_gconf_tmp_t,s0)
+-/tmp/gconfd-USER/.* -- gen_context(system_u:object_r:ROLE_gconf_tmp_t,s0)
++/tmp/gconfd-USER/.* -- gen_context(system_u:object_r:user_gconf_tmp_t,s0)
/usr/libexec/gconfd-2 -- gen_context(system_u:object_r:gconfd_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.if serefpolicy-3.1.2/policy/modules/apps/gnome.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.if serefpolicy-3.2.1/policy/modules/apps/gnome.if
--- nsaserefpolicy/policy/modules/apps/gnome.if 2007-07-23 10:20:12.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/gnome.if 2007-11-26 16:40:13.000000000 -0500
-@@ -33,6 +33,51 @@
++++ serefpolicy-3.2.1/policy/modules/apps/gnome.if 2007-11-30 11:28:22.000000000 -0500
+@@ -33,9 +33,56 @@
##
#
template(`gnome_per_role_template',`
@@ -1738,11 +1856,12 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.if
+ #
+ # Declarations
+ #
-+ type $1_gnome_home_t;
-+ userdom_user_home_type($1_gnome_home_t)
-+ userdom_user_home_content($1, $1_gnome_home_t)
-+ manage_dirs_pattern($2,$1_gnome_home_t, $1_gnome_home_t)
-+ manage_files_pattern($2,$1_gnome_home_t, $1_gnome_home_t)
++ ifelse(`$1',`user',`',`
++ typealias user_gnome_home_t alias $1_gnome_home_t;
++ ')
++
++ manage_dirs_pattern($2,user_gnome_home_t, user_gnome_home_t)
++ manage_files_pattern($2,user_gnome_home_t, user_gnome_home_t)
+')
+
+########################################
@@ -1781,17 +1900,50 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.if
gen_require(`
type gconfd_exec_t;
attribute gnomedomain;
-@@ -50,9 +95,6 @@
- type $1_gconf_home_t;
- userdom_user_home_content($1, $1_gconf_home_t)
++ type user_gconf_home_t, user_gconf_tmp_t;
+ ')
+ ##############################
+@@ -47,14 +94,10 @@
+ application_domain($1_gconfd_t, gconfd_exec_t)
+ role $3 types $1_gconfd_t;
+
+- type $1_gconf_home_t;
+- userdom_user_home_content($1, $1_gconf_home_t)
+-
- type $1_gnome_home_t;
- userdom_user_home_content($1, $1_gnome_home_t)
-
- type $1_gconf_tmp_t;
- files_tmp_file($1_gconf_tmp_t)
+- type $1_gconf_tmp_t;
+- files_tmp_file($1_gconf_tmp_t)
++ ifelse(`$1',`user',`',`
++ typealias user_gconf_home_t alias $1_gconf_home_t;
++ typealias user_gconf_tmp_t alias $1_gconf_tmp_t;
++ ')
-@@ -77,9 +119,6 @@
+ ##############################
+ #
+@@ -64,22 +107,19 @@
+ allow $1_gconfd_t self:process getsched;
+ allow $1_gconfd_t self:fifo_file rw_fifo_file_perms;
+
+- manage_dirs_pattern($1_gconfd_t,$1_gconf_home_t,$1_gconf_home_t)
+- manage_files_pattern($1_gconfd_t,$1_gconf_home_t,$1_gconf_home_t)
+- userdom_user_home_dir_filetrans($1, $1_gconfd_t, $1_gconf_home_t, dir)
+-
+- manage_dirs_pattern($1_gconfd_t,$1_gconf_tmp_t,$1_gconf_tmp_t)
+- manage_files_pattern($1_gconfd_t,$1_gconf_tmp_t,$1_gconf_tmp_t)
+- userdom_user_tmp_filetrans($1,$1_gconfd_t,$1_gconf_tmp_t,{ dir file })
++ manage_dirs_pattern($1_gconfd_t,user_gconf_home_t,user_gconf_home_t)
++ manage_files_pattern($1_gconfd_t,user_gconf_home_t,user_gconf_home_t)
++ userdom_user_home_dir_filetrans($1, $1_gconfd_t, user_gconf_home_t, dir)
++
++ manage_dirs_pattern($1_gconfd_t,user_gconf_tmp_t,user_gconf_tmp_t)
++ manage_files_pattern($1_gconfd_t,user_gconf_tmp_t,user_gconf_tmp_t)
++ userdom_user_tmp_filetrans($1,$1_gconfd_t,user_gconf_tmp_t,{ dir file })
+
+ domain_auto_trans($2, gconfd_exec_t, $1_gconfd_t)
+ allow $1_gconfd_t $2:fd use;
allow $1_gconfd_t $2:fifo_file write;
allow $1_gconfd_t $2:unix_stream_socket connectto;
@@ -1801,7 +1953,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.if
ps_process_pattern($2,$1_gconfd_t)
dev_read_urand($1_gconfd_t)
-@@ -100,7 +139,12 @@
+@@ -100,7 +140,12 @@
gnome_stream_connect_gconf_template($1,$2)
optional_policy(`
@@ -1814,7 +1966,16 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.if
')
optional_policy(`
-@@ -135,13 +179,32 @@
+@@ -128,20 +173,39 @@
+ template(`gnome_stream_connect_gconf_template',`
+ gen_require(`
+ type $1_gconfd_t;
+- type $1_gconf_tmp_t;
++ type user_gconf_tmp_t;
+ ')
+
+- read_files_pattern($2,$1_gconf_tmp_t,$1_gconf_tmp_t)
++ read_files_pattern($2,user_gconf_tmp_t,user_gconf_tmp_t)
allow $2 $1_gconfd_t:unix_stream_socket connectto;
')
@@ -1848,7 +2009,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.if
##
##
## This is a templated interface, and should only
-@@ -170,6 +233,30 @@
+@@ -170,6 +234,30 @@
########################################
##
@@ -1868,10 +2029,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.if
+#
+template(`gnome_read_user_gnome_config',`
+ gen_require(`
-+ type $1_gnome_home_t;
++ type user_gnome_home_t;
+ ')
+
-+ read_files_pattern($2, $1_gnome_home_t, $1_gnome_home_t)
++ read_files_pattern($2, user_gnome_home_t, user_gnome_home_t)
+')
+
+########################################
@@ -1879,14 +2040,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.if
## manage gnome homedir content (.config)
##
##
-@@ -189,6 +276,26 @@
- type $1_gnome_home_t;
+@@ -186,9 +274,29 @@
+ #
+ template(`gnome_manage_user_gnome_config',`
+ gen_require(`
+- type $1_gnome_home_t;
++ type user_gnome_home_t;
')
- allow $2 $1_gnome_home_t:dir manage_dir_perms;
- allow $2 $1_gnome_home_t:file manage_file_perms;
-+ manage_dirs_pattern($2, $1_gnome_home_t, $1_gnome_home_t)
-+ manage_files_pattern($2, $1_gnome_home_t, $1_gnome_home_t)
++ manage_dirs_pattern($2, user_gnome_home_t, user_gnome_home_t)
++ manage_files_pattern($2, user_gnome_home_t, user_gnome_home_t)
')
+
+########################################
@@ -1908,10 +2073,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.if
+ can_exec($1, gconfd_exec_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.te serefpolicy-3.1.2/policy/modules/apps/gnome.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.te serefpolicy-3.2.1/policy/modules/apps/gnome.te
--- nsaserefpolicy/policy/modules/apps/gnome.te 2007-10-12 08:56:02.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/gnome.te 2007-11-26 16:40:13.000000000 -0500
-@@ -8,8 +8,5 @@
++++ serefpolicy-3.2.1/policy/modules/apps/gnome.te 2007-11-30 11:23:56.000000000 -0500
+@@ -8,8 +8,15 @@
attribute gnomedomain;
@@ -1920,9 +2085,103 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gnome.te
-
type gconfd_exec_t;
application_executable_file(gconfd_exec_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.fc serefpolicy-3.1.2/policy/modules/apps/java.fc
++
++type user_gnome_home_t;
++userdom_user_home_type(user_gnome_home_t)
++userdom_user_home_content(user, user_gnome_home_t)
++
++type user_gconf_home_t;
++userdom_user_home_content(user, user_gconf_home_t)
++
++type user_gconf_tmp_t;
++files_tmp_file(user_gconf_tmp_t)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/gpg.fc serefpolicy-3.2.1/policy/modules/apps/gpg.fc
+--- nsaserefpolicy/policy/modules/apps/gpg.fc 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/gpg.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,4 +1,4 @@
+-HOME_DIR/\.gnupg(/.+)? gen_context(system_u:object_r:ROLE_gpg_secret_t,s0)
++HOME_DIR/\.gnupg(/.+)? gen_context(system_u:object_r:user_gpg_secret_t,s0)
+
+ /usr/bin/gpg(2)? -- gen_context(system_u:object_r:gpg_exec_t,s0)
+ /usr/bin/gpg-agent -- gen_context(system_u:object_r:gpg_agent_exec_t,s0)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/irc.fc serefpolicy-3.2.1/policy/modules/apps/irc.fc
+--- nsaserefpolicy/policy/modules/apps/irc.fc 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/irc.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,7 +1,7 @@
+ #
+ # /home
+ #
+-HOME_DIR/\.ircmotd -- gen_context(system_u:object_r:ROLE_irc_home_t,s0)
++HOME_DIR/\.ircmotd -- gen_context(system_u:object_r:user_irc_home_t,s0)
+
+ #
+ # /usr
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/irc.if serefpolicy-3.2.1/policy/modules/apps/irc.if
+--- nsaserefpolicy/policy/modules/apps/irc.if 2007-07-23 10:20:12.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/irc.if 2007-11-30 11:23:56.000000000 -0500
+@@ -50,12 +50,11 @@
+ userdom_user_home_content($1,$1_irc_exec_t)
+ application_domain($1_irc_t,$1_irc_exec_t)
+
+- type $1_irc_home_t;
+- userdom_user_home_content($1,$1_irc_home_t)
++ ifelse(`$1',`user',`',`
++ typealias user_irc_home_t alias $1_irc_home_t;
++ typealias user_irc_tmp_t alias $1_irc_tmp_t;
++ ')
+
+- type $1_irc_tmp_t;
+- userdom_user_home_content($1,$1_irc_tmp_t)
+-
+ ########################################
+ #
+ # Local policy
+@@ -65,18 +64,18 @@
+ allow $1_irc_t self:tcp_socket create_socket_perms;
+ allow $1_irc_t self:udp_socket create_socket_perms;
+
+- manage_dirs_pattern($1_irc_t,$1_irc_home_t,$1_irc_home_t)
+- manage_files_pattern($1_irc_t,$1_irc_home_t,$1_irc_home_t)
+- manage_lnk_files_pattern($1_irc_t,$1_irc_home_t,$1_irc_home_t)
+- userdom_user_home_dir_filetrans($1,$1_irc_t,$1_irc_home_t,{ dir file lnk_file })
++ manage_dirs_pattern($1_irc_t,user_irc_home_t,user_irc_home_t)
++ manage_files_pattern($1_irc_t,user_irc_home_t,user_irc_home_t)
++ manage_lnk_files_pattern($1_irc_t,user_irc_home_t,user_irc_home_t)
++ userdom_user_home_dir_filetrans($1,$1_irc_t,user_irc_home_t,{ dir file lnk_file })
+
+ # access files under /tmp
+- manage_dirs_pattern($1_irc_t,$1_irc_tmp_t,$1_irc_tmp_t)
+- manage_files_pattern($1_irc_t,$1_irc_tmp_t,$1_irc_tmp_t)
+- manage_lnk_files_pattern($1_irc_t,$1_irc_tmp_t,$1_irc_tmp_t)
+- manage_fifo_files_pattern($1_irc_t,$1_irc_tmp_t,$1_irc_tmp_t)
+- manage_sock_files_pattern($1_irc_t,$1_irc_tmp_t,$1_irc_tmp_t)
+- files_tmp_filetrans($1_irc_t,$1_irc_tmp_t,{ file dir lnk_file sock_file fifo_file })
++ manage_dirs_pattern($1_irc_t,user_irc_tmp_t,user_irc_tmp_t)
++ manage_files_pattern($1_irc_t,user_irc_tmp_t,user_irc_tmp_t)
++ manage_lnk_files_pattern($1_irc_t,user_irc_tmp_t,user_irc_tmp_t)
++ manage_fifo_files_pattern($1_irc_t,user_irc_tmp_t,user_irc_tmp_t)
++ manage_sock_files_pattern($1_irc_t,user_irc_tmp_t,user_irc_tmp_t)
++ files_tmp_filetrans($1_irc_t,user_irc_tmp_t,{ file dir lnk_file sock_file fifo_file })
+
+ # Transition from the user domain to the derived domain.
+ domtrans_pattern($2,irc_exec_t,$1_irc_t)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/irc.te serefpolicy-3.2.1/policy/modules/apps/irc.te
+--- nsaserefpolicy/policy/modules/apps/irc.te 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/irc.te 2007-11-30 11:23:56.000000000 -0500
+@@ -8,3 +8,10 @@
+
+ type irc_exec_t;
+ application_executable_file(irc_exec_t)
++
++type user_irc_home_t;
++userdom_user_home_content(user,user_irc_home_t)
++
++type user_irc_tmp_t;
++userdom_user_home_content(user,user_irc_tmp_t)
++
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.fc serefpolicy-3.2.1/policy/modules/apps/java.fc
--- nsaserefpolicy/policy/modules/apps/java.fc 2007-03-01 10:01:48.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/apps/java.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/java.fc 2007-11-30 11:23:56.000000000 -0500
@@ -11,6 +11,7 @@
#
/usr/(.*/)?bin/java.* -- gen_context(system_u:object_r:java_exec_t,s0)
@@ -1943,9 +2202,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.fc
+
+/usr/lib(64)?/openoffice\.org/program/soffice\.bin -- gen_context(system_u:object_r:java_exec_t,s0)
+/usr/bin/octave-[^/]* -- gen_context(system_u:object_r:java_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.if serefpolicy-3.1.2/policy/modules/apps/java.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.if serefpolicy-3.2.1/policy/modules/apps/java.if
--- nsaserefpolicy/policy/modules/apps/java.if 2007-10-12 08:56:02.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/java.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/java.if 2007-11-30 11:23:56.000000000 -0500
@@ -32,7 +32,7 @@
##
##
@@ -1955,8 +2214,14 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.if
gen_require(`
type java_exec_t;
')
-@@ -81,8 +81,7 @@
+@@ -76,13 +76,10 @@
+ manage_sock_files_pattern($1_javaplugin_t,$1_javaplugin_tmpfs_t,$1_javaplugin_tmpfs_t)
+ fs_tmpfs_filetrans($1_javaplugin_t,$1_javaplugin_tmpfs_t,{ file lnk_file sock_file fifo_file })
+- rw_files_pattern($1_javaplugin_t,$1_home_t,$1_home_t)
+- read_files_pattern($1_javaplugin_t,$1_home_t,$1_home_t)
+-
++ userdom_manage_unpriv_users_home_content_files($1_javaplugin_t)
can_exec($1_javaplugin_t, java_exec_t)
- # The user role is authorized for this domain.
@@ -1965,7 +2230,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.if
allow $1_javaplugin_t $2:fd use;
# Unrestricted inheritance from the caller.
allow $2 $1_javaplugin_t:process { noatsecure siginh rlimitinh };
-@@ -166,6 +165,62 @@
+@@ -166,6 +163,62 @@
optional_policy(`
xserver_user_client_template($1,$1_javaplugin_t,$1_javaplugin_tmpfs_t)
')
@@ -2028,7 +2293,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.if
')
########################################
-@@ -219,3 +274,66 @@
+@@ -219,3 +272,66 @@
corecmd_search_bin($1)
domtrans_pattern($1, java_exec_t, java_t)
')
@@ -2095,9 +2360,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.if
+ role $2 types java_t;
+ allow java_t $3:chr_file rw_term_perms;
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.te serefpolicy-3.1.2/policy/modules/apps/java.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.te serefpolicy-3.2.1/policy/modules/apps/java.te
--- nsaserefpolicy/policy/modules/apps/java.te 2007-10-12 08:56:02.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/java.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/java.te 2007-11-30 11:23:56.000000000 -0500
@@ -6,13 +6,6 @@
# Declarations
#
@@ -2139,9 +2404,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/java.te
+optional_policy(`
+ xserver_xdm_rw_shm(java_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mono.if serefpolicy-3.1.2/policy/modules/apps/mono.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mono.if serefpolicy-3.2.1/policy/modules/apps/mono.if
--- nsaserefpolicy/policy/modules/apps/mono.if 2007-01-02 12:57:22.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/apps/mono.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/mono.if 2007-11-30 11:23:56.000000000 -0500
@@ -18,3 +18,105 @@
corecmd_search_bin($1)
domtrans_pattern($1, mono_exec_t, mono_t)
@@ -2248,9 +2513,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mono.if
+ xserver_xdm_rw_shm($1_mono_t)
+ ')
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mono.te serefpolicy-3.1.2/policy/modules/apps/mono.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mono.te serefpolicy-3.2.1/policy/modules/apps/mono.te
--- nsaserefpolicy/policy/modules/apps/mono.te 2007-10-12 08:56:02.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/mono.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/mono.te 2007-11-30 11:23:56.000000000 -0500
@@ -15,7 +15,7 @@
# Local policy
#
@@ -2268,24 +2533,52 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mono.te
+optional_policy(`
+ xserver_xdm_rw_shm(mono_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.if serefpolicy-3.1.2/policy/modules/apps/mozilla.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.fc serefpolicy-3.2.1/policy/modules/apps/mozilla.fc
+--- nsaserefpolicy/policy/modules/apps/mozilla.fc 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/mozilla.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,8 +1,8 @@
+-HOME_DIR/\.galeon(/.*)? gen_context(system_u:object_r:ROLE_mozilla_home_t,s0)
+-HOME_DIR/\.java(/.*)? gen_context(system_u:object_r:ROLE_mozilla_home_t,s0)
+-HOME_DIR/\.mozilla(/.*)? gen_context(system_u:object_r:ROLE_mozilla_home_t,s0)
+-HOME_DIR/\.netscape(/.*)? gen_context(system_u:object_r:ROLE_mozilla_home_t,s0)
+-HOME_DIR/\.phoenix(/.*)? gen_context(system_u:object_r:ROLE_mozilla_home_t,s0)
++HOME_DIR/\.galeon(/.*)? gen_context(system_u:object_r:user_mozilla_home_t,s0)
++HOME_DIR/\.java(/.*)? gen_context(system_u:object_r:user_mozilla_home_t,s0)
++HOME_DIR/\.mozilla(/.*)? gen_context(system_u:object_r:user_mozilla_home_t,s0)
++HOME_DIR/\.netscape(/.*)? gen_context(system_u:object_r:user_mozilla_home_t,s0)
++HOME_DIR/\.phoenix(/.*)? gen_context(system_u:object_r:user_mozilla_home_t,s0)
+
+ #
+ # /bin
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.if serefpolicy-3.2.1/policy/modules/apps/mozilla.if
--- nsaserefpolicy/policy/modules/apps/mozilla.if 2007-10-29 07:52:48.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/mozilla.if 2007-11-26 16:40:13.000000000 -0500
-@@ -36,6 +36,8 @@
++++ serefpolicy-3.2.1/policy/modules/apps/mozilla.if 2007-11-30 11:23:56.000000000 -0500
+@@ -35,7 +35,10 @@
+ template(`mozilla_per_role_template',`
gen_require(`
type mozilla_conf_t, mozilla_exec_t;
++ type user_mozilla_home_t, user_mozilla_tmp_t;
')
+ gen_tunable(browser_confine_$1,false)
+ gen_tunable(browser_write_$1_data,false)
########################################
#
-@@ -52,13 +54,21 @@
+@@ -45,20 +48,26 @@
+ application_domain($1_mozilla_t,mozilla_exec_t)
+ role $3 types $1_mozilla_t;
+
+- type $1_mozilla_home_t alias $1_mozilla_rw_t;
+- files_poly_member($1_mozilla_home_t)
+- userdom_user_home_content($1,$1_mozilla_home_t)
+-
type $1_mozilla_tmpfs_t;
files_tmpfs_file($1_mozilla_tmpfs_t)
-+ type $1_mozilla_tmp_t;
-+ files_tmp_file($1_mozilla_tmp_t)
++ ifelse(`$1',`user',`',`
++ typealias user_mozilla_home_t alias $1_mozilla_home_t;
++ typealias user_mozilla_tmp_t alias $1_mozilla_tmp_t;
++ ')
+
+ ########################################
+ #
@@ -2303,16 +2596,42 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.
allow $1_mozilla_t self:fifo_file rw_fifo_file_perms;
allow $1_mozilla_t self:shm { unix_read unix_write read write destroy create };
allow $1_mozilla_t self:sem create_sem_perms;
-@@ -96,15 +106,37 @@
- relabel_files_pattern($2,$1_mozilla_home_t,$1_mozilla_home_t)
- relabel_lnk_files_pattern($2,$1_mozilla_home_t,$1_mozilla_home_t)
+@@ -72,9 +81,9 @@
+ can_exec($1_mozilla_t, mozilla_exec_t)
+ # X access, Home files
+- manage_dirs_pattern($1_mozilla_t,$1_mozilla_home_t,$1_mozilla_home_t)
+- manage_files_pattern($1_mozilla_t,$1_mozilla_home_t,$1_mozilla_home_t)
+- manage_lnk_files_pattern($1_mozilla_t,$1_mozilla_home_t,$1_mozilla_home_t)
++ manage_dirs_pattern($1_mozilla_t,user_mozilla_home_t,user_mozilla_home_t)
++ manage_files_pattern($1_mozilla_t,user_mozilla_home_t,user_mozilla_home_t)
++ manage_lnk_files_pattern($1_mozilla_t,user_mozilla_home_t,user_mozilla_home_t)
+ userdom_search_user_home_dirs($1,$1_mozilla_t)
+
+ # Mozpluggerrc
+@@ -89,22 +98,44 @@
+ allow $2 $1_mozilla_t:unix_stream_socket connectto;
+
+ # X access, Home files
+- manage_dirs_pattern($2,$1_mozilla_home_t,$1_mozilla_home_t)
+- manage_files_pattern($2,$1_mozilla_home_t,$1_mozilla_home_t)
+- manage_lnk_files_pattern($2,$1_mozilla_home_t,$1_mozilla_home_t)
+- relabel_dirs_pattern($2,$1_mozilla_home_t,$1_mozilla_home_t)
+- relabel_files_pattern($2,$1_mozilla_home_t,$1_mozilla_home_t)
+- relabel_lnk_files_pattern($2,$1_mozilla_home_t,$1_mozilla_home_t)
+-
- manage_files_pattern($1_mozilla_t,$1_mozilla_tmpfs_t,$1_mozilla_tmpfs_t)
- manage_lnk_files_pattern($1_mozilla_t,$1_mozilla_tmpfs_t,$1_mozilla_tmpfs_t)
- manage_fifo_files_pattern($1_mozilla_t,$1_mozilla_tmpfs_t,$1_mozilla_tmpfs_t)
- manage_sock_files_pattern($1_mozilla_t,$1_mozilla_tmpfs_t,$1_mozilla_tmpfs_t)
- fs_tmpfs_filetrans($1_mozilla_t,$1_mozilla_tmpfs_t,{ file lnk_file sock_file fifo_file })
--
++ manage_dirs_pattern($2,user_mozilla_home_t,user_mozilla_home_t)
++ manage_files_pattern($2,user_mozilla_home_t,user_mozilla_home_t)
++ manage_lnk_files_pattern($2,user_mozilla_home_t,user_mozilla_home_t)
++ relabel_dirs_pattern($2,user_mozilla_home_t,user_mozilla_home_t)
++ relabel_files_pattern($2,user_mozilla_home_t,user_mozilla_home_t)
++ relabel_lnk_files_pattern($2,user_mozilla_home_t,user_mozilla_home_t)
+
allow $1_mozilla_t $2:process signull;
- domain_auto_trans($2, mozilla_exec_t, $1_mozilla_t)
@@ -2348,7 +2667,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.
# Unrestricted inheritance from the caller.
allow $2 $1_mozilla_t:process { noatsecure siginh rlimitinh };
-@@ -115,8 +147,9 @@
+@@ -115,8 +146,9 @@
kernel_read_kernel_sysctls($1_mozilla_t)
kernel_read_network_state($1_mozilla_t)
# Access /proc, sysctl
@@ -2360,7 +2679,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.
# Look for plugins
corecmd_list_bin($1_mozilla_t)
-@@ -165,11 +198,21 @@
+@@ -165,11 +197,21 @@
files_read_var_files($1_mozilla_t)
files_read_var_symlinks($1_mozilla_t)
files_dontaudit_getattr_boot_dirs($1_mozilla_t)
@@ -2382,7 +2701,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.
term_dontaudit_getattr_pty_dirs($1_mozilla_t)
libs_use_ld_so($1_mozilla_t)
-@@ -184,12 +227,9 @@
+@@ -184,12 +226,9 @@
sysnet_dns_name_resolve($1_mozilla_t)
sysnet_read_config($1_mozilla_t)
@@ -2394,11 +2713,11 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.
- userdom_manage_user_tmp_sockets($1,$1_mozilla_t)
+ userdom_dontaudit_read_user_tmp_files($1,$1_mozilla_t)
+ userdom_dontaudit_use_user_terminals($1,$1_mozilla_t)
-+ userdom_user_home_dir_filetrans($1,$1_mozilla_t, $1_mozilla_home_t,dir)
++ userdom_user_home_dir_filetrans($1,$1_mozilla_t, user_mozilla_home_t,dir)
xserver_user_client_template($1,$1_mozilla_t,$1_mozilla_tmpfs_t)
xserver_dontaudit_read_xdm_tmp_files($1_mozilla_t)
-@@ -211,131 +251,8 @@
+@@ -211,131 +250,8 @@
fs_manage_cifs_symlinks($1_mozilla_t)
')
@@ -2532,7 +2851,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.
')
optional_policy(`
-@@ -350,19 +267,25 @@
+@@ -350,19 +266,25 @@
optional_policy(`
cups_read_rw_config($1_mozilla_t)
cups_dbus_chat($1_mozilla_t)
@@ -2560,7 +2879,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.
')
optional_policy(`
-@@ -382,25 +305,6 @@
+@@ -382,25 +304,6 @@
thunderbird_domtrans_user_thunderbird($1, $1_mozilla_t)
')
@@ -2586,7 +2905,37 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.
')
########################################
-@@ -573,3 +477,27 @@
+@@ -430,11 +333,11 @@
+ #
+ template(`mozilla_read_user_home_files',`
+ gen_require(`
+- type $1_mozilla_home_t;
++ type user_mozilla_home_t;
+ ')
+
+- allow $2 $1_mozilla_home_t:dir list_dir_perms;
+- allow $2 $1_mozilla_home_t:file read_file_perms;
++ allow $2 user_mozilla_home_t:dir list_dir_perms;
++ allow $2 user_mozilla_home_t:file read_file_perms;
+ ')
+
+ ########################################
+@@ -464,11 +367,11 @@
+ #
+ template(`mozilla_write_user_home_files',`
+ gen_require(`
+- type $1_mozilla_home_t;
++ type user_mozilla_home_t;
+ ')
+
+- allow $2 $1_mozilla_home_t:dir list_dir_perms;
+- allow $2 $1_mozilla_home_t:file write;
++ allow $2 user_mozilla_home_t:dir list_dir_perms;
++ allow $2 user_mozilla_home_t:file write;
+ ')
+
+ ########################################
+@@ -573,3 +476,27 @@
allow $2 $1_mozilla_t:tcp_socket rw_socket_perms;
')
@@ -2614,10 +2963,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.
+
+ allow $2 $1_mozilla_t:unix_stream_socket connectto;
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.te serefpolicy-3.1.2/policy/modules/apps/mozilla.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.te serefpolicy-3.2.1/policy/modules/apps/mozilla.te
--- nsaserefpolicy/policy/modules/apps/mozilla.te 2007-10-12 08:56:02.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/mozilla.te 2007-11-26 16:40:13.000000000 -0500
-@@ -6,13 +6,6 @@
++++ serefpolicy-3.2.1/policy/modules/apps/mozilla.te 2007-11-30 11:23:56.000000000 -0500
+@@ -6,15 +6,15 @@
# Declarations
#
@@ -2631,9 +2980,345 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mozilla.
type mozilla_conf_t;
files_config_file(mozilla_conf_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/userhelper.if serefpolicy-3.1.2/policy/modules/apps/userhelper.if
+ type mozilla_exec_t;
+ application_executable_file(mozilla_exec_t)
++
++type user_mozilla_home_t alias user_mozilla_rw_t;
++files_poly_member(user_mozilla_home_t)
++userdom_user_home_content(user,user_mozilla_home_t)
++
++type user_mozilla_tmp_t;
++files_tmp_file(user_mozilla_tmp_t)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mplayer.fc serefpolicy-3.2.1/policy/modules/apps/mplayer.fc
+--- nsaserefpolicy/policy/modules/apps/mplayer.fc 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/mplayer.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -10,4 +10,4 @@
+ /usr/bin/mencoder -- gen_context(system_u:object_r:mencoder_exec_t,s0)
+ /usr/bin/xine -- gen_context(system_u:object_r:mplayer_exec_t,s0)
+
+-HOME_DIR/\.mplayer(/.*)? gen_context(system_u:object_r:ROLE_mplayer_home_t,s0)
++HOME_DIR/\.mplayer(/.*)? gen_context(system_u:object_r:user_mplayer_home_t,s0)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mplayer.if serefpolicy-3.2.1/policy/modules/apps/mplayer.if
+--- nsaserefpolicy/policy/modules/apps/mplayer.if 2007-07-23 10:20:12.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/mplayer.if 2007-11-30 11:23:56.000000000 -0500
+@@ -35,6 +35,7 @@
+ template(`mplayer_per_role_template',`
+ gen_require(`
+ type mencoder_exec_t, mplayer_exec_t;
++ type user_mplayer_home_t;
+ ')
+
+ ########################################
+@@ -50,9 +51,9 @@
+ application_domain($1_mplayer_t,mplayer_exec_t)
+ role $3 types $1_mplayer_t;
+
+- type $1_mplayer_home_t alias $1_mplayer_rw_t;
+- files_poly_member($1_mplayer_home_t)
+- userdom_user_home_content($1,$1_mplayer_home_t)
++ ifelse(`$1',`user',`',`
++ typealias user_mplayer_home_t alias $1_mplayer_home_t;
++ ')
+
+ type $1_mplayer_tmpfs_t;
+ files_tmpfs_file($1_mplayer_tmpfs_t)
+@@ -62,9 +63,9 @@
+ # mencoder local policy
+ #
+
+- manage_dirs_pattern($1_mencoder_t,$1_mplayer_home_t,$1_mplayer_home_t)
+- manage_files_pattern($1_mencoder_t,$1_mplayer_home_t,$1_mplayer_home_t)
+- manage_lnk_files_pattern($1_mencoder_t,$1_mplayer_home_t,$1_mplayer_home_t)
++ manage_dirs_pattern($1_mencoder_t,user_mplayer_home_t,user_mplayer_home_t)
++ manage_files_pattern($1_mencoder_t,user_mplayer_home_t,user_mplayer_home_t)
++ manage_lnk_files_pattern($1_mencoder_t,user_mplayer_home_t,user_mplayer_home_t)
+
+ # Read global config
+ allow $1_mencoder_t mplayer_etc_t:dir list_dir_perms;
+@@ -256,9 +257,9 @@
+ allow $1_mplayer_t self:fifo_file rw_fifo_file_perms;
+ allow $1_mplayer_t self:sem create_sem_perms;
+
+- manage_dirs_pattern($1_mplayer_t,$1_mplayer_home_t,$1_mplayer_home_t)
+- manage_files_pattern($1_mplayer_t,$1_mplayer_home_t,$1_mplayer_home_t)
+- manage_lnk_files_pattern($1_mplayer_t,$1_mplayer_home_t,$1_mplayer_home_t)
++ manage_dirs_pattern($1_mplayer_t,user_mplayer_home_t,user_mplayer_home_t)
++ manage_files_pattern($1_mplayer_t,user_mplayer_home_t,user_mplayer_home_t)
++ manage_lnk_files_pattern($1_mplayer_t,user_mplayer_home_t,user_mplayer_home_t)
+ userdom_search_user_home_dirs($1,$1_mplayer_t)
+
+ manage_files_pattern($1_mplayer_t,$1_mplayer_tmpfs_t,$1_mplayer_tmpfs_t)
+@@ -273,12 +274,12 @@
+ read_lnk_files_pattern($1_mplayer_t,mplayer_etc_t,mplayer_etc_t)
+
+ # Home access
+- manage_dirs_pattern($2,$1_mplayer_home_t,$1_mplayer_home_t)
+- manage_files_pattern($2,$1_mplayer_home_t,$1_mplayer_home_t)
+- manage_lnk_files_pattern($2,$1_mplayer_home_t,$1_mplayer_home_t)
+- relabel_dirs_pattern($2,$1_mplayer_home_t,$1_mplayer_home_t)
+- relabel_files_pattern($2,$1_mplayer_home_t,$1_mplayer_home_t)
+- relabel_lnk_files_pattern($2,$1_mplayer_home_t,$1_mplayer_home_t)
++ manage_dirs_pattern($2,user_mplayer_home_t,user_mplayer_home_t)
++ manage_files_pattern($2,user_mplayer_home_t,user_mplayer_home_t)
++ manage_lnk_files_pattern($2,user_mplayer_home_t,user_mplayer_home_t)
++ relabel_dirs_pattern($2,user_mplayer_home_t,user_mplayer_home_t)
++ relabel_files_pattern($2,user_mplayer_home_t,user_mplayer_home_t)
++ relabel_lnk_files_pattern($2,user_mplayer_home_t,user_mplayer_home_t)
+
+ # domain transition
+ domtrans_pattern($2, mplayer_exec_t, $1_mplayer_t)
+@@ -503,8 +504,8 @@
+ #
+ template(`mplayer_read_user_home_files',`
+ gen_require(`
+- type $1_mplayer_home_t;
++ type user_mplayer_home_t;
+ ')
+
+- read_files_pattern($2,$1_mplayer_home_t,$1_mplayer_home_t)
++ read_files_pattern($2,user_mplayer_home_t,user_mplayer_home_t)
+ ')
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/mplayer.te serefpolicy-3.2.1/policy/modules/apps/mplayer.te
+--- nsaserefpolicy/policy/modules/apps/mplayer.te 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/mplayer.te 2007-11-30 11:23:56.000000000 -0500
+@@ -22,3 +22,7 @@
+ type mplayer_exec_t;
+ corecmd_executable_file(mplayer_exec_t)
+ application_executable_file(mplayer_exec_t)
++
++type user_mplayer_home_t alias user_mplayer_rw_t;
++userdom_user_home_content(user,user_mplayer_home_t)
++
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/screen.fc serefpolicy-3.2.1/policy/modules/apps/screen.fc
+--- nsaserefpolicy/policy/modules/apps/screen.fc 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/screen.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,7 +1,7 @@
+ #
+ # /home
+ #
+-HOME_DIR/\.screenrc -- gen_context(system_u:object_r:ROLE_screen_ro_home_t,s0)
++HOME_DIR/\.screenrc -- gen_context(system_u:object_r:user_screen_ro_home_t,s0)
+
+ #
+ # /usr
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/screen.if serefpolicy-3.2.1/policy/modules/apps/screen.if
+--- nsaserefpolicy/policy/modules/apps/screen.if 2007-07-23 10:20:12.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/screen.if 2007-11-30 11:23:56.000000000 -0500
+@@ -50,8 +50,9 @@
+ type $1_screen_tmp_t;
+ files_tmp_file($1_screen_tmp_t)
+
+- type $1_screen_ro_home_t;
+- files_type($1_screen_ro_home_t)
++ ifelse(`$1',`user',`',`
++ typealias user_screen_ro_home_t alias $1_screen_ro_home_t;
++ ')
+
+ type $1_screen_var_run_t;
+ files_pid_file($1_screen_var_run_t)
+@@ -81,9 +82,9 @@
+ filetrans_pattern($1_screen_t,screen_dir_t,$1_screen_var_run_t,fifo_file)
+ files_pid_filetrans($1_screen_t,screen_dir_t,dir)
+
+- allow $1_screen_t $1_screen_ro_home_t:dir list_dir_perms;
+- read_files_pattern($1_screen_t,$1_screen_ro_home_t,$1_screen_ro_home_t)
+- read_lnk_files_pattern($1_screen_t,$1_screen_ro_home_t,$1_screen_ro_home_t)
++ allow $1_screen_t user_screen_ro_home_t:dir list_dir_perms;
++ read_files_pattern($1_screen_t,user_screen_ro_home_t,user_screen_ro_home_t)
++ read_lnk_files_pattern($1_screen_t,user_screen_ro_home_t,user_screen_ro_home_t)
+
+ allow $1_screen_t $2:process signal;
+
+@@ -91,12 +92,12 @@
+ allow $2 $1_screen_t:process signal;
+ allow $1_screen_t $2:process signal;
+
+- manage_dirs_pattern($2,$1_screen_ro_home_t,$1_screen_ro_home_t)
+- manage_files_pattern($2,$1_screen_ro_home_t,$1_screen_ro_home_t)
+- manage_lnk_files_pattern($2,$1_screen_ro_home_t,$1_screen_ro_home_t)
+- relabel_dirs_pattern($2,$1_screen_ro_home_t,$1_screen_ro_home_t)
+- relabel_files_pattern($2,$1_screen_ro_home_t,$1_screen_ro_home_t)
+- relabel_lnk_files_pattern($2,$1_screen_ro_home_t,$1_screen_ro_home_t)
++ manage_dirs_pattern($2,user_screen_ro_home_t,user_screen_ro_home_t)
++ manage_files_pattern($2,user_screen_ro_home_t,user_screen_ro_home_t)
++ manage_lnk_files_pattern($2,user_screen_ro_home_t,user_screen_ro_home_t)
++ relabel_dirs_pattern($2,user_screen_ro_home_t,user_screen_ro_home_t)
++ relabel_files_pattern($2,user_screen_ro_home_t,user_screen_ro_home_t)
++ relabel_lnk_files_pattern($2,user_screen_ro_home_t,user_screen_ro_home_t)
+
+ kernel_read_system_state($1_screen_t)
+ kernel_read_kernel_sysctls($1_screen_t)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/screen.te serefpolicy-3.2.1/policy/modules/apps/screen.te
+--- nsaserefpolicy/policy/modules/apps/screen.te 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/screen.te 2007-11-30 11:23:56.000000000 -0500
+@@ -11,3 +11,7 @@
+
+ type screen_exec_t;
+ application_executable_file(screen_exec_t)
++
++type user_screen_ro_home_t;
++userdom_user_home_content(user,user_screen_ro_home_t)
++
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/thunderbird.fc serefpolicy-3.2.1/policy/modules/apps/thunderbird.fc
+--- nsaserefpolicy/policy/modules/apps/thunderbird.fc 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/thunderbird.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -3,4 +3,4 @@
+ #
+ /usr/bin/thunderbird.* -- gen_context(system_u:object_r:thunderbird_exec_t,s0)
+
+-HOME_DIR/\.thunderbird(/.*)? gen_context(system_u:object_r:ROLE_thunderbird_home_t,s0)
++HOME_DIR/\.thunderbird(/.*)? gen_context(system_u:object_r:user_thunderbird_home_t,s0)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/thunderbird.if serefpolicy-3.2.1/policy/modules/apps/thunderbird.if
+--- nsaserefpolicy/policy/modules/apps/thunderbird.if 2007-10-29 07:52:48.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/thunderbird.if 2007-11-30 11:23:56.000000000 -0500
+@@ -43,9 +43,9 @@
+ application_domain($1_thunderbird_t,thunderbird_exec_t)
+ role $3 types $1_thunderbird_t;
+
+- type $1_thunderbird_home_t alias $1_thunderbird_rw_t;
+- files_poly_member($1_thunderbird_home_t)
+- userdom_user_home_content($1, $1_thunderbird_home_t)
++ ifelse(`$1',`user',`',`
++ typealias user_thunderbird_home_t alias $1_thunderbird_home_t;
++ ')
+
+ type $1_thunderbird_tmpfs_t;
+ files_tmpfs_file($1_thunderbird_tmpfs_t)
+@@ -65,9 +65,9 @@
+ allow $1_thunderbird_t self:netlink_route_socket r_netlink_socket_perms;
+
+ # Access ~/.thunderbird
+- manage_dirs_pattern($1_thunderbird_t,$1_thunderbird_home_t,$1_thunderbird_home_t)
+- manage_files_pattern($1_thunderbird_t,$1_thunderbird_home_t,$1_thunderbird_home_t)
+- manage_lnk_files_pattern($1_thunderbird_t,$1_thunderbird_home_t,$1_thunderbird_home_t)
++ manage_dirs_pattern($1_thunderbird_t,user_thunderbird_home_t,user_thunderbird_home_t)
++ manage_files_pattern($1_thunderbird_t,user_thunderbird_home_t,user_thunderbird_home_t)
++ manage_lnk_files_pattern($1_thunderbird_t,user_thunderbird_home_t,user_thunderbird_home_t)
+ userdom_search_user_home_dirs($1,$1_thunderbird_t)
+
+ manage_files_pattern($1_thunderbird_t,$1_thunderbird_tmpfs_t,$1_thunderbird_tmpfs_t)
+@@ -88,13 +88,13 @@
+ ps_process_pattern($2,$1_thunderbird_t)
+
+ # Access ~/.thunderbird
+- manage_dirs_pattern($2,$1_thunderbird_home_t,$1_thunderbird_home_t)
+- manage_files_pattern($2,$1_thunderbird_home_t,$1_thunderbird_home_t)
+- manage_lnk_files_pattern($2,$1_thunderbird_home_t,$1_thunderbird_home_t)
+-
+- relabel_dirs_pattern($2,$1_thunderbird_home_t,$1_thunderbird_home_t)
+- relabel_files_pattern($2,$1_thunderbird_home_t,$1_thunderbird_home_t)
+- relabel_lnk_files_pattern($2,$1_thunderbird_home_t,$1_thunderbird_home_t)
++ manage_dirs_pattern($2,user_thunderbird_home_t,user_thunderbird_home_t)
++ manage_files_pattern($2,user_thunderbird_home_t,user_thunderbird_home_t)
++ manage_lnk_files_pattern($2,user_thunderbird_home_t,user_thunderbird_home_t)
++
++ relabel_dirs_pattern($2,user_thunderbird_home_t,user_thunderbird_home_t)
++ relabel_files_pattern($2,user_thunderbird_home_t,user_thunderbird_home_t)
++ relabel_lnk_files_pattern($2,user_thunderbird_home_t,user_thunderbird_home_t)
+
+ # Allow netstat
+ kernel_read_network_state($1_thunderbird_t)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/thunderbird.te serefpolicy-3.2.1/policy/modules/apps/thunderbird.te
+--- nsaserefpolicy/policy/modules/apps/thunderbird.te 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/thunderbird.te 2007-11-30 11:23:56.000000000 -0500
+@@ -8,3 +8,7 @@
+
+ type thunderbird_exec_t;
+ application_executable_file(thunderbird_exec_t)
++
++type user_thunderbird_home_t alias user_thunderbird_rw_t;
++userdom_user_home_content(user, user_thunderbird_home_t)
++
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/tvtime.if serefpolicy-3.2.1/policy/modules/apps/tvtime.if
+--- nsaserefpolicy/policy/modules/apps/tvtime.if 2007-07-23 10:20:12.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/tvtime.if 2007-11-30 11:23:56.000000000 -0500
+@@ -46,12 +46,10 @@
+ application_domain($1_tvtime_t,tvtime_exec_t)
+ role $3 types $1_tvtime_t;
+
+- type $1_tvtime_home_t alias $1_tvtime_rw_t;
+- userdom_user_home_content($1,$1_tvtime_home_t)
+- files_poly_member($1_tvtime_home_t)
+-
+- type $1_tvtime_tmp_t;
+- files_tmp_file($1_tvtime_tmp_t)
++ ifelse(`$1',`user',`',`
++ typealias user_tvtime_home_t alias $1_tvtime_home_t;
++ typealias user_tvtime_tmp_t alias $1_tvtime_tmp_t;
++ ')
+
+ type $1_tvtime_tmpfs_t;
+ files_tmpfs_file($1_tvtime_tmpfs_t)
+@@ -67,14 +65,14 @@
+ allow $1_tvtime_t self:unix_stream_socket rw_stream_socket_perms;
+
+ # X access, Home files
+- manage_dirs_pattern($1_tvtime_t,$1_tvtime_home_t,$1_tvtime_home_t)
+- manage_files_pattern($1_tvtime_t,$1_tvtime_home_t,$1_tvtime_home_t)
+- manage_lnk_files_pattern($1_tvtime_t,$1_tvtime_home_t,$1_tvtime_home_t)
+- userdom_user_home_dir_filetrans($1,$1_tvtime_t,$1_tvtime_home_t,dir)
+-
+- manage_dirs_pattern($1_tvtime_t,$1_tvtime_tmp_t,$1_tvtime_tmp_t)
+- manage_files_pattern($1_tvtime_t,$1_tvtime_tmp_t,$1_tvtime_tmp_t)
+- files_tmp_filetrans($1_tvtime_t, $1_tvtime_tmp_t,{ file dir })
++ manage_dirs_pattern($1_tvtime_t,user_tvtime_home_t,user_tvtime_home_t)
++ manage_files_pattern($1_tvtime_t,user_tvtime_home_t,user_tvtime_home_t)
++ manage_lnk_files_pattern($1_tvtime_t,user_tvtime_home_t,user_tvtime_home_t)
++ userdom_user_home_dir_filetrans($1,$1_tvtime_t,user_tvtime_home_t,dir)
++
++ manage_dirs_pattern($1_tvtime_t,user_tvtime_tmp_t,user_tvtime_tmp_t)
++ manage_files_pattern($1_tvtime_t,user_tvtime_tmp_t,user_tvtime_tmp_t)
++ files_tmp_filetrans($1_tvtime_t, user_tvtime_tmp_t,{ file dir })
+
+ manage_files_pattern($1_tvtime_t,$1_tvtime_tmpfs_t,$1_tvtime_tmpfs_t)
+ manage_lnk_files_pattern($1_tvtime_t,$1_tvtime_tmpfs_t,$1_tvtime_tmpfs_t)
+@@ -86,12 +84,12 @@
+ domtrans_pattern($2, tvtime_exec_t, $1_tvtime_t)
+
+ # X access, Home files
+- manage_dirs_pattern($2,$1_tvtime_home_t,$1_tvtime_home_t)
+- manage_files_pattern($2,$1_tvtime_home_t,$1_tvtime_home_t)
+- manage_lnk_files_pattern($2,$1_tvtime_home_t,$1_tvtime_home_t)
+- relabel_dirs_pattern($2,$1_tvtime_home_t,$1_tvtime_home_t)
+- relabel_files_pattern($2,$1_tvtime_home_t,$1_tvtime_home_t)
+- relabel_lnk_files_pattern($2,$1_tvtime_home_t,$1_tvtime_home_t)
++ manage_dirs_pattern($2,user_tvtime_home_t,user_tvtime_home_t)
++ manage_files_pattern($2,user_tvtime_home_t,user_tvtime_home_t)
++ manage_lnk_files_pattern($2,user_tvtime_home_t,user_tvtime_home_t)
++ relabel_dirs_pattern($2,user_tvtime_home_t,user_tvtime_home_t)
++ relabel_files_pattern($2,user_tvtime_home_t,user_tvtime_home_t)
++ relabel_lnk_files_pattern($2,user_tvtime_home_t,user_tvtime_home_t)
+
+ # Allow the user domain to signal/ps.
+ ps_process_pattern($2,$1_tvtime_t)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/tvtime.te serefpolicy-3.2.1/policy/modules/apps/tvtime.te
+--- nsaserefpolicy/policy/modules/apps/tvtime.te 2007-10-02 09:54:50.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/tvtime.te 2007-11-30 11:23:56.000000000 -0500
+@@ -11,3 +11,9 @@
+
+ type tvtime_dir_t;
+ files_pid_file(tvtime_dir_t)
++
++type user_tvtime_home_t alias user_tvtime_rw_t;
++userdom_user_home_content(user,user_tvtime_home_t)
++
++type user_tvtime_tmp_t;
++files_tmp_file(user_tvtime_tmp_t)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/uml.fc serefpolicy-3.2.1/policy/modules/apps/uml.fc
+--- nsaserefpolicy/policy/modules/apps/uml.fc 2007-10-12 08:56:02.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/apps/uml.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,7 +1,7 @@
+ #
+ # HOME_DIR/
+ #
+-HOME_DIR/\.uml(/.*)? gen_context(system_u:object_r:ROLE_uml_rw_t,s0)
++HOME_DIR/\.uml(/.*)? gen_context(system_u:object_r:user_uml_rw_t,s0)
+
+ #
+ # /usr
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/userhelper.if serefpolicy-3.2.1/policy/modules/apps/userhelper.if
--- nsaserefpolicy/policy/modules/apps/userhelper.if 2007-07-23 10:20:12.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/userhelper.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/userhelper.if 2007-11-30 11:23:56.000000000 -0500
@@ -130,6 +130,7 @@
term_use_all_user_ptys($1_userhelper_t)
@@ -2642,9 +3327,47 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/userhelp
auth_manage_pam_pid($1_userhelper_t)
auth_manage_var_auth($1_userhelper_t)
auth_search_pam_console_data($1_userhelper_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/vmware.fc serefpolicy-3.1.2/policy/modules/apps/vmware.fc
+@@ -181,24 +182,6 @@
+ nscd_socket_use($1_userhelper_t)
+ ')
+
+- ifdef(`TODO',`
+- allow $1_userhelper_t xdm_t:fd use;
+- allow $1_userhelper_t xdm_var_run_t:dir search;
+- allow $1_userhelper_t xdm_t:fifo_file { getattr read write ioctl };
+-
+- optional_policy(`
+- allow $1_userhelper_t gphdomain:fd use;
+- ')
+- optional_policy(`
+- domtrans_pattern($1_userhelper_t, xauth_exec_t, $1_xauth_t)
+- allow $1_userhelper_t $1_xauth_home_t:file { getattr read };
+- ')
+- optional_policy(`
+- domtrans_pattern($1_mozilla_t, userhelper_exec_t, $1_userhelper_t)
+- ')
+- # for when the network connection is killed
+- dontaudit unpriv_userdomain $1_userhelper_t:process signal;
+- ')
+ ')
+
+ ########################################
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/vmware.fc serefpolicy-3.2.1/policy/modules/apps/vmware.fc
--- nsaserefpolicy/policy/modules/apps/vmware.fc 2007-10-12 08:56:02.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/vmware.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/vmware.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,9 +1,9 @@
+ #
+ # HOME_DIR/
+ #
+-HOME_DIR/\.vmware(/.*)? gen_context(system_u:object_r:ROLE_vmware_file_t,s0)
+-HOME_DIR/\.vmware[^/]*/.*\.cfg -- gen_context(system_u:object_r:ROLE_vmware_conf_t,s0)
+-HOME_DIR/vmware(/.*)? gen_context(system_u:object_r:ROLE_vmware_file_t,s0)
++HOME_DIR/\.vmware(/.*)? gen_context(system_u:object_r:user_vmware_file_t,s0)
++HOME_DIR/\.vmware[^/]*/.*\.cfg -- gen_context(system_u:object_r:user_vmware_conf_t,s0)
++HOME_DIR/vmware(/.*)? gen_context(system_u:object_r:user_vmware_file_t,s0)
+
+ #
+ # /etc
@@ -21,19 +21,25 @@
/usr/bin/vmware-nmbd -- gen_context(system_u:object_r:vmware_host_exec_t,s0)
/usr/bin/vmware-ping -- gen_context(system_u:object_r:vmware_host_exec_t,s0)
@@ -2676,9 +3399,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/vmware.f
/opt/vmware/workstation/bin/vmware -- gen_context(system_u:object_r:vmware_exec_t,s0)
')
+/var/log/vmware.* -- gen_context(system_u:object_r:vmware_log_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/vmware.if serefpolicy-3.1.2/policy/modules/apps/vmware.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/vmware.if serefpolicy-3.2.1/policy/modules/apps/vmware.if
--- nsaserefpolicy/policy/modules/apps/vmware.if 2007-02-19 11:32:52.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/apps/vmware.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/vmware.if 2007-11-30 11:23:56.000000000 -0500
@@ -202,3 +202,22 @@
allow $1 vmware_sys_conf_t:file append;
@@ -2702,9 +3425,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/vmware.i
+ logging_search_logs($1)
+ append_files_pattern($1,vmware_log_t,vmware_log_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/vmware.te serefpolicy-3.1.2/policy/modules/apps/vmware.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/vmware.te serefpolicy-3.2.1/policy/modules/apps/vmware.te
--- nsaserefpolicy/policy/modules/apps/vmware.te 2007-10-12 08:56:02.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/vmware.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/vmware.te 2007-11-30 11:23:56.000000000 -0500
@@ -22,6 +22,9 @@
type vmware_var_run_t;
files_pid_file(vmware_var_run_t)
@@ -2734,9 +3457,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/vmware.t
kernel_read_kernel_sysctls(vmware_host_t)
kernel_list_proc(vmware_host_t)
kernel_read_proc_symlinks(vmware_host_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/wine.if serefpolicy-3.1.2/policy/modules/apps/wine.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/wine.if serefpolicy-3.2.1/policy/modules/apps/wine.if
--- nsaserefpolicy/policy/modules/apps/wine.if 2007-09-12 10:34:17.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/wine.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/wine.if 2007-11-30 11:23:56.000000000 -0500
@@ -49,3 +49,53 @@
role $2 types wine_t;
allow wine_t $3:chr_file rw_term_perms;
@@ -2791,9 +3514,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/wine.if
+ xserver_xdm_rw_shm($1_wine_t)
+ ')
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/wine.te serefpolicy-3.1.2/policy/modules/apps/wine.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/wine.te serefpolicy-3.2.1/policy/modules/apps/wine.te
--- nsaserefpolicy/policy/modules/apps/wine.te 2007-10-12 08:56:02.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/apps/wine.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/apps/wine.te 2007-11-30 11:23:56.000000000 -0500
@@ -9,6 +9,7 @@
type wine_t;
type wine_exec_t;
@@ -2818,9 +3541,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/apps/wine.te
+optional_policy(`
+ xserver_xdm_rw_shm(wine_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/corecommands.fc serefpolicy-3.1.2/policy/modules/kernel/corecommands.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/corecommands.fc serefpolicy-3.2.1/policy/modules/kernel/corecommands.fc
--- nsaserefpolicy/policy/modules/kernel/corecommands.fc 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/kernel/corecommands.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/corecommands.fc 2007-11-30 11:23:56.000000000 -0500
@@ -168,8 +168,10 @@
/usr/libexec/openssh/sftp-server -- gen_context(system_u:object_r:bin_t,s0)
@@ -2850,9 +3573,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/coreco
+/etc/apcupsd/mastertimeout -- gen_context(system_u:object_r:bin_t,s0)
+/etc/apcupsd/offbattery -- gen_context(system_u:object_r:bin_t,s0)
+/etc/apcupsd/onbattery -- gen_context(system_u:object_r:bin_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/corecommands.if serefpolicy-3.1.2/policy/modules/kernel/corecommands.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/corecommands.if serefpolicy-3.2.1/policy/modules/kernel/corecommands.if
--- nsaserefpolicy/policy/modules/kernel/corecommands.if 2007-11-14 08:17:58.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/kernel/corecommands.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/corecommands.if 2007-11-30 11:23:56.000000000 -0500
@@ -875,6 +875,7 @@
read_lnk_files_pattern($1,bin_t,bin_t)
@@ -2861,23 +3584,20 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/coreco
')
########################################
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/corenetwork.te.in serefpolicy-3.1.2/policy/modules/kernel/corenetwork.te.in
---- nsaserefpolicy/policy/modules/kernel/corenetwork.te.in 2007-11-08 09:29:27.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/kernel/corenetwork.te.in 2007-11-26 16:40:13.000000000 -0500
-@@ -132,8 +132,9 @@
- network_port(openvpn, tcp,1194,s0, udp,1194,s0)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/corenetwork.te.in serefpolicy-3.2.1/policy/modules/kernel/corenetwork.te.in
+--- nsaserefpolicy/policy/modules/kernel/corenetwork.te.in 2007-11-29 13:29:34.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/corenetwork.te.in 2007-11-30 11:41:04.000000000 -0500
+@@ -133,6 +133,7 @@
network_port(pegasus_http, tcp,5988,s0)
network_port(pegasus_https, tcp,5989,s0)
--network_port(postfix_policyd, tcp,10031,s0)
+ network_port(postfix_policyd, tcp,10031,s0)
+network_port(pgpkeyserver, udp, 11371,s0, tcp,11371,s0)
network_port(pop, tcp,106,s0, tcp,109,s0, tcp,110,s0, tcp,143,s0, tcp,220,s0, tcp,993,s0, tcp,995,s0, tcp,1109,s0)
-+network_port(postfix_policyd, tcp,10031,s0)
network_port(portmap, udp,111,s0, tcp,111,s0)
network_port(postgresql, tcp,5432,s0)
- network_port(postgrey, tcp,60000,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/devices.fc serefpolicy-3.1.2/policy/modules/kernel/devices.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/devices.fc serefpolicy-3.2.1/policy/modules/kernel/devices.fc
--- nsaserefpolicy/policy/modules/kernel/devices.fc 2007-11-14 16:20:13.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/kernel/devices.fc 2007-11-28 10:30:00.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/devices.fc 2007-11-30 11:41:53.000000000 -0500
@@ -4,6 +4,7 @@
/dev/.*mouse.* -c gen_context(system_u:object_r:mouse_device_t,s0)
@@ -2913,7 +3633,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/device
/dev/logibm -c gen_context(system_u:object_r:mouse_device_t,s0)
/dev/lp.* -c gen_context(system_u:object_r:printer_device_t,s0)
/dev/mcelog -c gen_context(system_u:object_r:kmsg_device_t,mls_systemhigh)
-@@ -114,9 +120,14 @@
+@@ -114,9 +120,9 @@
/dev/xen/blktap.* -c gen_context(system_u:object_r:xen_device_t,s0)
/dev/xen/evtchn -c gen_context(system_u:object_r:xen_device_t,s0)
@@ -2922,17 +3642,12 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/device
-/lib/udev/devices -d gen_context(system_u:object_r:device_t,s0)
+/lib/udev/devices -d gen_context(system_u:object_r:device_t,s0)
-+
-+ifdef(`distro_debian',`
-+# used by udev init script as temporary mount point
-+/lib/udev/devices -d gen_context(system_u:object_r:device_t,s0)
-+')
ifdef(`distro_gentoo',`
# used by init scripts to initally populate udev /dev
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/devices.if serefpolicy-3.1.2/policy/modules/kernel/devices.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/devices.if serefpolicy-3.2.1/policy/modules/kernel/devices.if
--- nsaserefpolicy/policy/modules/kernel/devices.if 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/kernel/devices.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/devices.if 2007-11-30 11:23:56.000000000 -0500
@@ -65,7 +65,7 @@
relabelfrom_dirs_pattern($1,device_t,device_node)
@@ -3087,9 +3802,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/device
typeattribute $1 devices_unconfined_type;
')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/devices.te serefpolicy-3.1.2/policy/modules/kernel/devices.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/devices.te serefpolicy-3.2.1/policy/modules/kernel/devices.te
--- nsaserefpolicy/policy/modules/kernel/devices.te 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/kernel/devices.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/devices.te 2007-11-30 11:23:56.000000000 -0500
@@ -72,6 +72,13 @@
dev_node(kmsg_device_t)
@@ -3104,27 +3819,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/device
# Type for /dev/mapper/control
#
type lvm_control_t;
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/domain.if serefpolicy-3.1.2/policy/modules/kernel/domain.if
---- nsaserefpolicy/policy/modules/kernel/domain.if 2007-11-14 16:20:13.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/kernel/domain.if 2007-11-26 16:40:13.000000000 -0500
-@@ -57,13 +57,6 @@
- init_signull($1)
- ')
-
-- # these seem questionable:
--
-- optional_policy(`
-- rpm_use_fds($1)
-- rpm_read_pipes($1)
-- ')
--
- optional_policy(`
- selinux_dontaudit_getattr_fs($1)
- selinux_dontaudit_read_fs($1)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/domain.te serefpolicy-3.1.2/policy/modules/kernel/domain.te
---- nsaserefpolicy/policy/modules/kernel/domain.te 2007-11-14 16:20:13.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/kernel/domain.te 2007-11-26 16:40:13.000000000 -0500
-@@ -148,3 +148,10 @@
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/domain.te serefpolicy-3.2.1/policy/modules/kernel/domain.te
+--- nsaserefpolicy/policy/modules/kernel/domain.te 2007-11-29 13:29:34.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/domain.te 2007-11-30 11:34:23.000000000 -0500
+@@ -148,3 +148,15 @@
# receive from all domains over labeled networking
domain_all_recvfrom_all_domains(unconfined_domain_type)
@@ -3132,12 +3830,17 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/domain
+optional_policy(`
+ rpm_rw_pipes(domain)
+')
++
++optional_policy(`
++ rhgb_dontaudit_use_ptys(domain)
++')
++
+optional_policy(`
+ unconfined_dontaudit_rw_pipes(domain)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/files.if serefpolicy-3.1.2/policy/modules/kernel/files.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/files.if serefpolicy-3.2.1/policy/modules/kernel/files.if
--- nsaserefpolicy/policy/modules/kernel/files.if 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/kernel/files.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/files.if 2007-11-30 11:23:56.000000000 -0500
@@ -1266,6 +1266,24 @@
########################################
@@ -3226,9 +3929,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/files.
+ filetrans_pattern($1,root_t,default_t,dir)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/files.te serefpolicy-3.1.2/policy/modules/kernel/files.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/files.te serefpolicy-3.2.1/policy/modules/kernel/files.te
--- nsaserefpolicy/policy/modules/kernel/files.te 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/kernel/files.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/files.te 2007-11-30 11:23:56.000000000 -0500
@@ -55,6 +55,9 @@
# compatibility aliases for removed types:
typealias etc_t alias automount_etc_t;
@@ -3239,9 +3942,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/files.
#
# etc_runtime_t is the type of various
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/filesystem.te serefpolicy-3.1.2/policy/modules/kernel/filesystem.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/filesystem.te serefpolicy-3.2.1/policy/modules/kernel/filesystem.te
--- nsaserefpolicy/policy/modules/kernel/filesystem.te 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/kernel/filesystem.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/filesystem.te 2007-11-30 11:23:56.000000000 -0500
@@ -25,6 +25,8 @@
fs_use_xattr encfs gen_context(system_u:object_r:fs_t,s0);
fs_use_xattr ext2 gen_context(system_u:object_r:fs_t,s0);
@@ -3251,9 +3954,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/filesy
fs_use_xattr gfs gen_context(system_u:object_r:fs_t,s0);
fs_use_xattr gfs2 gen_context(system_u:object_r:fs_t,s0);
fs_use_xattr jffs2 gen_context(system_u:object_r:fs_t,s0);
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/kernel.if serefpolicy-3.1.2/policy/modules/kernel/kernel.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/kernel.if serefpolicy-3.2.1/policy/modules/kernel/kernel.if
--- nsaserefpolicy/policy/modules/kernel/kernel.if 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/kernel/kernel.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/kernel.if 2007-11-30 11:30:39.000000000 -0500
@@ -1194,6 +1194,7 @@
')
@@ -3270,57 +3973,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/kernel
')
########################################
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinux.if serefpolicy-3.1.2/policy/modules/kernel/selinux.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinux.if serefpolicy-3.2.1/policy/modules/kernel/selinux.if
--- nsaserefpolicy/policy/modules/kernel/selinux.if 2007-11-16 13:45:14.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/kernel/selinux.if 2007-11-26 16:40:13.000000000 -0500
-@@ -7,11 +7,11 @@
-
- ########################################
- ##
--## Get the mountpoint of the selinuxfs filesystem.
-+## Gets the caller the mountpoint of the selinuxfs filesystem.
- ##
- ##
- ##
--## Domain allowed access.
-+## The process type requesting the selinuxfs mountpoint.
- ##
- ##
- #
-@@ -32,32 +32,6 @@
-
- ########################################
- ##
--## Do not audit attempts to get the mountpoint
--## of the selinuxfs filesystem.
--##
--##
--##
--## Domain to not audit.
--##
--##
--#
--interface(`selinux_dontaudit_get_fs_mount',`
-- gen_require(`
-- type security_t;
-- ')
--
-- # starting in libselinux 2.0.5, init_selinuxmnt() will
-- # attempt to short circuit by checking if SELINUXMNT
-- # (/selinux) is already a selinuxfs
-- dontaudit $1 security_t:filesystem getattr;
--
-- # read /proc/filesystems to see if selinuxfs is supported
-- # then read /proc/self/mount to see where selinuxfs is mounted
-- kernel_dontaudit_read_system_state($1)
--')
--
--########################################
--##
- ## Get the attributes of the selinuxfs filesystem
- ##
- ##
-@@ -164,6 +138,7 @@
++++ serefpolicy-3.2.1/policy/modules/kernel/selinux.if 2007-11-30 11:23:56.000000000 -0500
+@@ -164,6 +164,7 @@
type security_t;
')
@@ -3328,7 +3984,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinu
dontaudit $1 security_t:dir search_dir_perms;
dontaudit $1 security_t:file { getattr read };
')
-@@ -185,6 +160,7 @@
+@@ -185,6 +186,7 @@
type security_t;
')
@@ -3336,7 +3992,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinu
allow $1 security_t:dir list_dir_perms;
allow $1 security_t:file { getattr read };
')
-@@ -265,6 +241,34 @@
+@@ -265,6 +267,34 @@
########################################
##
@@ -3371,7 +4027,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinu
## Allow caller to set the state of Booleans to
## enable or disable conditional portions of the policy.
##
-@@ -288,11 +292,13 @@
+@@ -288,11 +318,13 @@
interface(`selinux_set_boolean',`
gen_require(`
type security_t;
@@ -3386,7 +4042,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinu
if(!secure_mode_policyload) {
allow $1 security_t:security setbool;
-@@ -489,3 +495,23 @@
+@@ -489,3 +521,23 @@
typeattribute $1 selinux_unconfined_type;
')
@@ -3410,16 +4066,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinu
+ fs_type($1)
+ mls_trusted_object($1)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinux.te serefpolicy-3.1.2/policy/modules/kernel/selinux.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinux.te serefpolicy-3.2.1/policy/modules/kernel/selinux.te
--- nsaserefpolicy/policy/modules/kernel/selinux.te 2007-11-16 13:45:14.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/kernel/selinux.te 2007-11-26 16:40:13.000000000 -0500
-@@ -1,5 +1,5 @@
-
--policy_module(selinux,1.4.1)
-+policy_module(selinux,1.4.0)
-
- ########################################
- #
++++ serefpolicy-3.2.1/policy/modules/kernel/selinux.te 2007-11-30 11:23:56.000000000 -0500
@@ -10,6 +10,7 @@
attribute can_setenforce;
attribute can_setsecparam;
@@ -3440,9 +4089,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinu
neverallow ~{ selinux_unconfined_type can_load_policy } security_t:security load_policy;
neverallow ~{ selinux_unconfined_type can_setenforce } security_t:security setenforce;
neverallow ~{ selinux_unconfined_type can_setsecparam } security_t:security setsecparam;
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/terminal.fc serefpolicy-3.1.2/policy/modules/kernel/terminal.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/terminal.fc serefpolicy-3.2.1/policy/modules/kernel/terminal.fc
--- nsaserefpolicy/policy/modules/kernel/terminal.fc 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/kernel/terminal.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/kernel/terminal.fc 2007-11-30 11:23:56.000000000 -0500
@@ -14,6 +14,7 @@
/dev/isdn.* -c gen_context(system_u:object_r:tty_device_t,s0)
/dev/ptmx -c gen_context(system_u:object_r:ptmx_t,s0)
@@ -3451,9 +4100,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/termin
/dev/tty -c gen_context(system_u:object_r:devtty_t,s0)
/dev/ttySG.* -c gen_context(system_u:object_r:tty_device_t,s0)
/dev/xvc[^/]* -c gen_context(system_u:object_r:tty_device_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/amavis.te serefpolicy-3.1.2/policy/modules/services/amavis.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/amavis.te serefpolicy-3.2.1/policy/modules/services/amavis.te
--- nsaserefpolicy/policy/modules/services/amavis.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/amavis.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/amavis.te 2007-11-30 11:23:56.000000000 -0500
@@ -65,6 +65,7 @@
# Spool Files
manage_dirs_pattern(amavis_t,amavis_spool_t,amavis_spool_t)
@@ -3470,9 +4119,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/amav
corenet_tcp_connect_razor_port(amavis_t)
dev_read_rand(amavis_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apache.fc serefpolicy-3.1.2/policy/modules/services/apache.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apache.fc serefpolicy-3.2.1/policy/modules/services/apache.fc
--- nsaserefpolicy/policy/modules/services/apache.fc 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/apache.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/apache.fc 2007-11-30 11:23:56.000000000 -0500
@@ -16,7 +16,6 @@
/usr/lib/apache-ssl/.+ -- gen_context(system_u:object_r:httpd_exec_t,s0)
@@ -3498,9 +4147,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
+/var/www/html/[^/]*/cgi-bin(/.*)? gen_context(system_u:object_r:httpd_sys_script_exec_t,s0)
+
+/etc/rc\.d/init\.d/httpd -- gen_context(system_u:object_r:httpd_script_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apache.if serefpolicy-3.1.2/policy/modules/services/apache.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apache.if serefpolicy-3.2.1/policy/modules/services/apache.if
--- nsaserefpolicy/policy/modules/services/apache.if 2007-10-23 17:17:42.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/apache.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/apache.if 2007-11-30 11:23:56.000000000 -0500
@@ -18,10 +18,6 @@
attribute httpd_script_exec_type;
type httpd_t, httpd_suexec_t, httpd_log_t;
@@ -3790,9 +4439,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
+# allow httpd_setsebool_t httpd_bool_t:dir list_dir_perms;
+# allow httpd_setsebool_t httpd_bool_t:file rw_file_perms;
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apache.te serefpolicy-3.1.2/policy/modules/services/apache.te
---- nsaserefpolicy/policy/modules/services/apache.te 2007-10-23 07:37:52.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/apache.te 2007-11-26 16:40:13.000000000 -0500
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apache.te serefpolicy-3.2.1/policy/modules/services/apache.te
+--- nsaserefpolicy/policy/modules/services/apache.te 2007-11-29 13:29:35.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/apache.te 2007-11-30 11:55:41.000000000 -0500
@@ -20,20 +20,22 @@
# Declarations
#
@@ -3983,10 +4632,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
+ mta_send_mail(httpd_sys_script_t)
+')
+
- tunable_policy(`httpd_can_network_connect_db',`
- # allow httpd to connect to mysql/posgresql
- corenet_tcp_connect_postgresql_port(httpd_t)
-@@ -389,6 +442,10 @@
+ tunable_policy(`httpd_can_network_relay',`
+ # allow httpd to work as a relay
+ corenet_tcp_connect_gopher_port(httpd_t)
+@@ -381,6 +434,10 @@
corenet_sendrecv_http_cache_client_packets(httpd_t)
')
@@ -3997,7 +4646,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
tunable_policy(`httpd_enable_cgi && httpd_unified && httpd_builtin_scripting',`
domtrans_pattern(httpd_t, httpdcontent, httpd_sys_script_t)
-@@ -406,11 +463,21 @@
+@@ -398,11 +455,21 @@
fs_read_nfs_symlinks(httpd_t)
')
@@ -4019,20 +4668,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
tunable_policy(`httpd_ssi_exec',`
corecmd_shell_domtrans(httpd_t,httpd_sys_script_t)
allow httpd_sys_script_t httpd_t:fd use;
-@@ -432,6 +499,12 @@
- ')
-
- optional_policy(`
-+ tunable_policy(`httpd_tty_comm',`
-+ unconfined_use_terminals(httpd_t)
-+ ')
-+')
-+
-+optional_policy(`
- calamaris_read_www_files(httpd_t)
- ')
-
-@@ -444,8 +517,14 @@
+@@ -436,8 +503,14 @@
')
optional_policy(`
@@ -4048,10 +4684,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
')
optional_policy(`
-@@ -459,11 +538,11 @@
+@@ -449,19 +522,13 @@
+ ')
+
optional_policy(`
+- # Allow httpd to work with mysql
mysql_stream_connect(httpd_t)
mysql_rw_db_sockets(httpd_t)
+-
+- tunable_policy(`httpd_can_network_connect_db',`
+- corenet_tcp_connect_mysqld_port(httpd_t)
+- corenet_sendrecv_mysqld_client_packets(httpd_t)
+- ')
+ mysql_read_config(httpd_t)
')
@@ -4061,7 +4705,26 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
')
optional_policy(`
-@@ -483,6 +562,7 @@
+@@ -471,13 +538,14 @@
+ openca_kill(httpd_t)
+ ')
+
++tunable_policy(`httpd_can_network_connect_db',`
++ postgresql_tcp_connect(httpd_t)
++ postgresql_tcp_connect(httpd_sys_script_t)
++')
++
+ optional_policy(`
+ # Allow httpd to work with postgresql
+ postgresql_stream_connect(httpd_t)
+-
+- tunable_policy(`httpd_can_network_connect_db',`
+- postgresql_tcp_connect(httpd_t)
+- ')
+ ')
+
+ optional_policy(`
+@@ -485,6 +553,7 @@
')
optional_policy(`
@@ -4069,7 +4732,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
snmp_dontaudit_read_snmp_var_lib_files(httpd_t)
snmp_dontaudit_write_snmp_var_lib_files(httpd_t)
')
-@@ -518,6 +598,13 @@
+@@ -520,6 +589,13 @@
userdom_use_sysadm_terms(httpd_helper_t)
')
@@ -4083,15 +4746,35 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
########################################
#
# Apache PHP script local policy
-@@ -555,6 +642,7 @@
+@@ -549,18 +625,24 @@
- optional_policy(`
- mysql_stream_connect(httpd_php_t)
-+ mysql_read_config(httpd_php_t)
+ fs_search_auto_mountpoints(httpd_php_t)
+
++auth_use_nsswitch(httpd_php_t)
++
+ libs_exec_lib_files(httpd_php_t)
+ libs_use_ld_so(httpd_php_t)
+ libs_use_shared_libs(httpd_php_t)
+
+ userdom_use_unpriv_users_fds(httpd_php_t)
+
+-optional_policy(`
+- mysql_stream_connect(httpd_php_t)
++tunable_policy(`httpd_can_network_connect_db',`
++ corenet_tcp_connect_mysqld_port(httpd_t)
++ corenet_sendrecv_mysqld_client_packets(httpd_t)
++ corenet_tcp_connect_mysqld_port(httpd_sys_script_t)
++ corenet_sendrecv_mysqld_client_packets(httpd_sys_script_t)
')
optional_policy(`
-@@ -569,7 +657,6 @@
+- nis_use_ypbind(httpd_php_t)
++ mysql_stream_connect(httpd_php_t)
++ mysql_read_config(httpd_php_t)
+ ')
+
+ ########################################
+@@ -571,7 +653,6 @@
allow httpd_suexec_t self:capability { setuid setgid };
allow httpd_suexec_t self:process signal_perms;
allow httpd_suexec_t self:unix_stream_socket create_stream_socket_perms;
@@ -4099,7 +4782,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
domtrans_pattern(httpd_t, httpd_suexec_exec_t, httpd_suexec_t)
-@@ -583,6 +670,10 @@
+@@ -585,6 +666,10 @@
manage_files_pattern(httpd_suexec_t,httpd_suexec_tmp_t,httpd_suexec_tmp_t)
files_tmp_filetrans(httpd_suexec_t, httpd_suexec_tmp_t, { file dir })
@@ -4110,7 +4793,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
kernel_read_kernel_sysctls(httpd_suexec_t)
kernel_list_proc(httpd_suexec_t)
kernel_read_proc_symlinks(httpd_suexec_t)
-@@ -622,8 +713,6 @@
+@@ -624,8 +709,6 @@
corenet_udp_sendrecv_all_ports(httpd_suexec_t)
corenet_tcp_connect_all_ports(httpd_suexec_t)
corenet_sendrecv_all_client_packets(httpd_suexec_t)
@@ -4119,7 +4802,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
')
tunable_policy(`httpd_enable_cgi && httpd_unified',`
-@@ -636,6 +725,12 @@
+@@ -638,6 +721,12 @@
fs_exec_nfs_files(httpd_suexec_t)
')
@@ -4132,7 +4815,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
tunable_policy(`httpd_enable_homedirs && use_samba_home_dirs',`
fs_read_cifs_files(httpd_suexec_t)
fs_read_cifs_symlinks(httpd_suexec_t)
-@@ -653,18 +748,6 @@
+@@ -655,18 +744,6 @@
dontaudit httpd_suexec_t httpd_t:unix_stream_socket { read write };
')
@@ -4151,7 +4834,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
########################################
#
# Apache system script local policy
-@@ -674,7 +757,8 @@
+@@ -676,7 +753,8 @@
dontaudit httpd_sys_script_t httpd_config_t:dir search;
@@ -4161,7 +4844,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
allow httpd_sys_script_t squirrelmail_spool_t:dir list_dir_perms;
read_files_pattern(httpd_sys_script_t,squirrelmail_spool_t,squirrelmail_spool_t)
-@@ -688,15 +772,62 @@
+@@ -690,15 +768,44 @@
# Should we add a boolean?
apache_domtrans_rotatelogs(httpd_sys_script_t)
@@ -4182,24 +4865,6 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
+ fs_read_nfs_symlinks(httpd_sys_script_t)
+')
+
-+tunable_policy(`httpd_enable_cgi && httpd_can_network_connect_db',`
-+ allow httpd_sys_script_t self:tcp_socket create_stream_socket_perms;
-+ allow httpd_sys_script_t self:udp_socket create_socket_perms;
-+
-+ corenet_all_recvfrom_unlabeled(httpd_sys_script_t)
-+ corenet_all_recvfrom_netlabel(httpd_sys_script_t)
-+ corenet_tcp_sendrecv_all_if(httpd_sys_script_t)
-+ corenet_udp_sendrecv_all_if(httpd_sys_script_t)
-+ corenet_tcp_sendrecv_all_nodes(httpd_sys_script_t)
-+ corenet_udp_sendrecv_all_nodes(httpd_sys_script_t)
-+ corenet_tcp_sendrecv_all_ports(httpd_sys_script_t)
-+ corenet_udp_sendrecv_all_ports(httpd_sys_script_t)
-+ corenet_tcp_connect_postgresql_port(httpd_sys_script_t)
-+ corenet_tcp_connect_mysqld_port(httpd_sys_script_t)
-+ corenet_sendrecv_postgresql_client_packets(httpd_sys_script_t)
-+ corenet_sendrecv_mysqld_client_packets(httpd_sys_script_t)
-+')
-+
+tunable_policy(`httpd_enable_cgi && httpd_can_network_connect',`
+ allow httpd_sys_script_t self:tcp_socket create_stream_socket_perms;
+ allow httpd_sys_script_t self:udp_socket create_socket_perms;
@@ -4225,7 +4890,15 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
tunable_policy(`httpd_enable_homedirs && use_samba_home_dirs',`
fs_read_cifs_files(httpd_sys_script_t)
fs_read_cifs_symlinks(httpd_sys_script_t)
-@@ -709,6 +840,7 @@
+@@ -708,9 +815,15 @@
+ clamav_domtrans_clamscan(httpd_sys_script_t)
+ ')
+
++tunable_policy(`httpd_can_network_connect_db',`
++ corenet_tcp_connect_mysqld_port(httpd_t)
++ corenet_sendrecv_mysqld_client_packets(httpd_t)
++')
++
optional_policy(`
mysql_stream_connect(httpd_sys_script_t)
mysql_rw_db_sockets(httpd_sys_script_t)
@@ -4233,7 +4906,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
')
########################################
-@@ -730,3 +862,46 @@
+@@ -732,3 +845,46 @@
logging_search_logs(httpd_rotatelogs_t)
miscfiles_read_localization(httpd_rotatelogs_t)
@@ -4280,9 +4953,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apac
+optional_policy(`
+ postgresql_stream_connect(httpd_bugzilla_script_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apcupsd.if serefpolicy-3.1.2/policy/modules/services/apcupsd.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apcupsd.if serefpolicy-3.2.1/policy/modules/services/apcupsd.if
--- nsaserefpolicy/policy/modules/services/apcupsd.if 2007-09-12 10:34:18.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/apcupsd.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/apcupsd.if 2007-11-30 11:23:56.000000000 -0500
@@ -90,10 +90,29 @@
##
##
@@ -4314,9 +4987,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apcu
+ allow $1 apcupsd_tmp_t:file read_file_perms;
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apcupsd.te serefpolicy-3.1.2/policy/modules/services/apcupsd.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apcupsd.te serefpolicy-3.2.1/policy/modules/services/apcupsd.te
--- nsaserefpolicy/policy/modules/services/apcupsd.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/apcupsd.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/apcupsd.te 2007-11-30 11:23:56.000000000 -0500
@@ -86,6 +86,11 @@
miscfiles_read_localization(apcupsd_t)
@@ -4329,18 +5002,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/apcu
optional_policy(`
hostname_exec(apcupsd_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/automount.fc serefpolicy-3.1.2/policy/modules/services/automount.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/automount.fc serefpolicy-3.2.1/policy/modules/services/automount.fc
--- nsaserefpolicy/policy/modules/services/automount.fc 2007-02-19 11:32:53.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/automount.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/automount.fc 2007-11-30 11:23:56.000000000 -0500
@@ -12,4 +12,4 @@
# /var
#
-/var/run/autofs(/.*)? gen_context(system_u:object_r:automount_var_run_t,s0)
+/var/run/autofs.* gen_context(system_u:object_r:automount_var_run_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/automount.if serefpolicy-3.1.2/policy/modules/services/automount.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/automount.if serefpolicy-3.2.1/policy/modules/services/automount.if
--- nsaserefpolicy/policy/modules/services/automount.if 2007-03-26 10:39:04.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/automount.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/automount.if 2007-11-30 11:23:56.000000000 -0500
@@ -74,3 +74,21 @@
dontaudit $1 automount_tmp_t:dir getattr;
@@ -4363,9 +5036,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/auto
+
+ dontaudit $1 automount_t:fd use;
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/automount.te serefpolicy-3.1.2/policy/modules/services/automount.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/automount.te serefpolicy-3.2.1/policy/modules/services/automount.te
--- nsaserefpolicy/policy/modules/services/automount.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/automount.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/automount.te 2007-11-30 11:23:56.000000000 -0500
@@ -52,7 +52,8 @@
files_root_filetrans(automount_t,automount_tmp_t,dir)
@@ -4405,9 +5078,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/auto
seutil_sigchld_newrole(automount_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/avahi.te serefpolicy-3.1.2/policy/modules/services/avahi.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/avahi.te serefpolicy-3.2.1/policy/modules/services/avahi.te
--- nsaserefpolicy/policy/modules/services/avahi.te 2007-10-29 07:52:49.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/avahi.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/avahi.te 2007-11-30 11:23:56.000000000 -0500
@@ -85,6 +85,7 @@
dbus_connect_system_bus(avahi_t)
@@ -4416,9 +5089,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/avah
')
optional_policy(`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/bind.te serefpolicy-3.1.2/policy/modules/services/bind.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/bind.te serefpolicy-3.2.1/policy/modules/services/bind.te
--- nsaserefpolicy/policy/modules/services/bind.te 2007-10-29 07:52:49.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/bind.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/bind.te 2007-11-30 11:23:56.000000000 -0500
@@ -9,7 +9,7 @@
##
##
@@ -4428,17 +5101,17 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/bind
##
##
gen_tunable(named_write_master_zones,false)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/bluetooth.fc serefpolicy-3.1.2/policy/modules/services/bluetooth.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/bluetooth.fc serefpolicy-3.2.1/policy/modules/services/bluetooth.fc
--- nsaserefpolicy/policy/modules/services/bluetooth.fc 2006-11-16 17:15:20.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/bluetooth.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/bluetooth.fc 2007-11-30 11:23:56.000000000 -0500
@@ -22,3 +22,4 @@
#
/var/lib/bluetooth(/.*)? gen_context(system_u:object_r:bluetooth_var_lib_t,s0)
/var/run/sdp -s gen_context(system_u:object_r:bluetooth_var_run_t,s0)
+/var/run/bluetoothd_address gen_context(system_u:object_r:bluetooth_var_run_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/bluetooth.te serefpolicy-3.1.2/policy/modules/services/bluetooth.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/bluetooth.te serefpolicy-3.2.1/policy/modules/services/bluetooth.te
--- nsaserefpolicy/policy/modules/services/bluetooth.te 2007-10-29 07:52:49.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/bluetooth.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/bluetooth.te 2007-11-30 11:23:56.000000000 -0500
@@ -44,7 +44,7 @@
allow bluetooth_t self:shm create_shm_perms;
allow bluetooth_t self:socket create_stream_socket_perms;
@@ -4456,9 +5129,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/blue
')
optional_policy(`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/clamav.fc serefpolicy-3.1.2/policy/modules/services/clamav.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/clamav.fc serefpolicy-3.2.1/policy/modules/services/clamav.fc
--- nsaserefpolicy/policy/modules/services/clamav.fc 2007-09-05 15:24:44.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/clamav.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/clamav.fc 2007-11-30 11:23:56.000000000 -0500
@@ -13,8 +13,7 @@
/var/lib/clamav(/.*)? gen_context(system_u:object_r:clamd_var_lib_t,s0)
@@ -4469,9 +5142,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/clam
/var/log/clamav/freshclam.* -- gen_context(system_u:object_r:freshclam_var_log_t,s0)
/var/spool/amavisd/clamd\.sock -s gen_context(system_u:object_r:clamd_var_run_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/clamav.te serefpolicy-3.1.2/policy/modules/services/clamav.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/clamav.te serefpolicy-3.2.1/policy/modules/services/clamav.te
--- nsaserefpolicy/policy/modules/services/clamav.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/clamav.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/clamav.te 2007-11-30 11:23:56.000000000 -0500
@@ -87,6 +87,7 @@
kernel_dontaudit_list_proc(clamd_t)
kernel_read_sysctl(clamd_t)
@@ -4499,9 +5172,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/clam
+optional_policy(`
+ mailscanner_manage_spool(clamscan_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/comsat.te serefpolicy-3.1.2/policy/modules/services/comsat.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/comsat.te serefpolicy-3.2.1/policy/modules/services/comsat.te
--- nsaserefpolicy/policy/modules/services/comsat.te 2007-07-16 14:09:46.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/comsat.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/comsat.te 2007-11-30 11:23:56.000000000 -0500
@@ -57,6 +57,8 @@
files_search_spool(comsat_t)
files_search_home(comsat_t)
@@ -4531,9 +5204,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/coms
-optional_policy(`
- nscd_socket_use(comsat_t)
-')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/consolekit.te serefpolicy-3.1.2/policy/modules/services/consolekit.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/consolekit.te serefpolicy-3.2.1/policy/modules/services/consolekit.te
--- nsaserefpolicy/policy/modules/services/consolekit.te 2007-10-29 07:52:49.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/consolekit.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/consolekit.te 2007-11-30 11:23:56.000000000 -0500
@@ -10,7 +10,6 @@
type consolekit_exec_t;
init_daemon_domain(consolekit_t, consolekit_exec_t)
@@ -4586,9 +5259,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cons
+ #reading .Xauthity
+ unconfined_ptrace(consolekit_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/courier.te serefpolicy-3.1.2/policy/modules/services/courier.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/courier.te serefpolicy-3.2.1/policy/modules/services/courier.te
--- nsaserefpolicy/policy/modules/services/courier.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/courier.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/courier.te 2007-11-30 11:23:56.000000000 -0500
@@ -58,6 +58,7 @@
files_getattr_tmp_dirs(courier_authdaemon_t)
@@ -4597,9 +5270,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cour
libs_read_lib_files(courier_authdaemon_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cron.fc serefpolicy-3.1.2/policy/modules/services/cron.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cron.fc serefpolicy-3.2.1/policy/modules/services/cron.fc
--- nsaserefpolicy/policy/modules/services/cron.fc 2006-11-16 17:15:21.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/cron.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/cron.fc 2007-11-30 11:23:56.000000000 -0500
@@ -17,6 +17,8 @@
/var/run/fcron\.fifo -s gen_context(system_u:object_r:crond_var_run_t,s0)
/var/run/fcron\.pid -- gen_context(system_u:object_r:crond_var_run_t,s0)
@@ -4614,9 +5287,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cron
/var/spool/fcron/systab -- gen_context(system_u:object_r:system_cron_spool_t,s0)
/var/spool/fcron/new\.systab -- gen_context(system_u:object_r:system_cron_spool_t,s0)
+/var/lib/misc(/.*)? gen_context(system_u:object_r:system_crond_var_lib_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cron.if serefpolicy-3.1.2/policy/modules/services/cron.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cron.if serefpolicy-3.2.1/policy/modules/services/cron.if
--- nsaserefpolicy/policy/modules/services/cron.if 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/cron.if 2007-11-28 08:46:16.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/cron.if 2007-11-30 11:23:56.000000000 -0500
@@ -35,38 +35,23 @@
#
template(`cron_per_role_template',`
@@ -4866,9 +5539,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cron
## Read, and write cron daemon TCP sockets.
##
##
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cron.te serefpolicy-3.1.2/policy/modules/services/cron.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cron.te serefpolicy-3.2.1/policy/modules/services/cron.te
--- nsaserefpolicy/policy/modules/services/cron.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/cron.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/cron.te 2007-11-30 11:23:56.000000000 -0500
@@ -50,6 +50,7 @@
type crond_tmp_t;
@@ -5077,9 +5750,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cron
')
ifdef(`TODO',`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cups.fc serefpolicy-3.1.2/policy/modules/services/cups.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cups.fc serefpolicy-3.2.1/policy/modules/services/cups.fc
--- nsaserefpolicy/policy/modules/services/cups.fc 2007-11-16 15:30:49.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/cups.fc 2007-11-28 08:28:27.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/cups.fc 2007-11-30 11:23:56.000000000 -0500
@@ -8,17 +8,15 @@
/etc/cups/ppd/.* -- gen_context(system_u:object_r:cupsd_rw_etc_t,s0)
/etc/cups/ppds\.dat -- gen_context(system_u:object_r:cupsd_rw_etc_t,s0)
@@ -5128,9 +5801,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cups
+
+/usr/local/Brother/inf(/.*)? gen_context(system_u:object_r:cupsd_rw_etc_t,s0)
+/usr/local/Printer/[^/]*/inf(/.*)? gen_context(system_u:object_r:cupsd_rw_etc_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cups.te serefpolicy-3.1.2/policy/modules/services/cups.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cups.te serefpolicy-3.2.1/policy/modules/services/cups.te
--- nsaserefpolicy/policy/modules/services/cups.te 2007-11-16 15:30:49.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/cups.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/cups.te 2007-11-30 11:25:57.000000000 -0500
@@ -48,9 +48,7 @@
type hplip_t;
type hplip_exec_t;
@@ -5438,7 +6111,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cups
optional_policy(`
seutil_sigchld_newrole(hplip_t)
')
-@@ -666,3 +687,15 @@
+@@ -666,3 +687,11 @@
optional_policy(`
udev_read_db(ptal_t)
')
@@ -5450,13 +6123,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cups
+files_getattr_all_tmp_files(cupsd_t)
+userdom_read_unpriv_users_tmp_files(cupsd_t)
+files_dontaudit_getattr_all_tmp_sockets(cupsd_t)
-+
-+optional_policy(`
-+ unconfined_read_tmp_files(cupsd_t)
-+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cvs.te serefpolicy-3.1.2/policy/modules/services/cvs.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cvs.te serefpolicy-3.2.1/policy/modules/services/cvs.te
--- nsaserefpolicy/policy/modules/services/cvs.te 2007-11-15 13:40:14.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/cvs.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/cvs.te 2007-11-30 11:23:56.000000000 -0500
@@ -68,7 +68,9 @@
fs_getattr_xattr_fs(cvs_t)
@@ -5467,9 +6136,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cvs.
corecmd_exec_bin(cvs_t)
corecmd_exec_shell(cvs_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cyrus.te serefpolicy-3.1.2/policy/modules/services/cyrus.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cyrus.te serefpolicy-3.2.1/policy/modules/services/cyrus.te
--- nsaserefpolicy/policy/modules/services/cyrus.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/cyrus.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/cyrus.te 2007-11-30 11:23:56.000000000 -0500
@@ -41,7 +41,6 @@
allow cyrus_t self:unix_stream_socket connectto;
allow cyrus_t self:tcp_socket create_stream_socket_perms;
@@ -5502,9 +6171,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cyru
sasl_connect(cyrus_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dbskk.te serefpolicy-3.1.2/policy/modules/services/dbskk.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dbskk.te serefpolicy-3.2.1/policy/modules/services/dbskk.te
--- nsaserefpolicy/policy/modules/services/dbskk.te 2007-07-16 14:09:46.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/dbskk.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/dbskk.te 2007-11-30 11:23:56.000000000 -0500
@@ -63,6 +63,8 @@
files_read_etc_files(dbskkd_t)
@@ -5527,9 +6196,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dbsk
-optional_policy(`
- nscd_socket_use(dbskkd_t)
-')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dbus.if serefpolicy-3.1.2/policy/modules/services/dbus.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dbus.if serefpolicy-3.2.1/policy/modules/services/dbus.if
--- nsaserefpolicy/policy/modules/services/dbus.if 2007-10-29 07:52:49.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/dbus.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/dbus.if 2007-11-30 11:23:56.000000000 -0500
@@ -91,7 +91,7 @@
# SE-DBus specific permissions
allow $1_dbusd_$1_t { $1_dbusd_t self }:dbus send_msg;
@@ -5611,31 +6280,17 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dbus
+
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dbus.te serefpolicy-3.1.2/policy/modules/services/dbus.te
---- nsaserefpolicy/policy/modules/services/dbus.te 2007-10-29 07:52:49.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/dbus.te 2007-11-26 16:40:13.000000000 -0500
-@@ -121,6 +121,10 @@
- ')
-
- optional_policy(`
-+ rhgb_use_ptys(system_dbusd_t)
-+')
-+
-+optional_policy(`
- sysnet_domtrans_dhcpc(system_dbusd_t)
- ')
-
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dictd.fc serefpolicy-3.1.2/policy/modules/services/dictd.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dictd.fc serefpolicy-3.2.1/policy/modules/services/dictd.fc
--- nsaserefpolicy/policy/modules/services/dictd.fc 2006-11-16 17:15:20.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/dictd.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/dictd.fc 2007-11-30 11:23:56.000000000 -0500
@@ -4,3 +4,4 @@
/usr/sbin/dictd -- gen_context(system_u:object_r:dictd_exec_t,s0)
/var/lib/dictd(/.*)? gen_context(system_u:object_r:dictd_var_lib_t,s0)
+/var/run/dictd\.pid -- gen_context(system_u:object_r:dictd_var_run_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dictd.te serefpolicy-3.1.2/policy/modules/services/dictd.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dictd.te serefpolicy-3.2.1/policy/modules/services/dictd.te
--- nsaserefpolicy/policy/modules/services/dictd.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/dictd.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/dictd.te 2007-11-30 11:23:56.000000000 -0500
@@ -16,6 +16,9 @@
type dictd_var_lib_t alias var_lib_dictd_t;
files_type(dictd_var_lib_t)
@@ -5656,9 +6311,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dict
kernel_read_system_state(dictd_t)
kernel_read_kernel_sysctls(dictd_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dnsmasq.te serefpolicy-3.1.2/policy/modules/services/dnsmasq.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dnsmasq.te serefpolicy-3.2.1/policy/modules/services/dnsmasq.te
--- nsaserefpolicy/policy/modules/services/dnsmasq.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/dnsmasq.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/dnsmasq.te 2007-11-30 11:23:56.000000000 -0500
@@ -94,3 +94,7 @@
optional_policy(`
udev_read_db(dnsmasq_t)
@@ -5667,9 +6322,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dnsm
+optional_policy(`
+ virt_manage_lib_files(dnsmasq_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dovecot.fc serefpolicy-3.1.2/policy/modules/services/dovecot.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dovecot.fc serefpolicy-3.2.1/policy/modules/services/dovecot.fc
--- nsaserefpolicy/policy/modules/services/dovecot.fc 2006-11-16 17:15:21.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/dovecot.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/dovecot.fc 2007-11-30 11:23:56.000000000 -0500
@@ -17,19 +17,24 @@
ifdef(`distro_debian', `
@@ -5695,9 +6350,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dove
/var/spool/dovecot(/.*)? gen_context(system_u:object_r:dovecot_spool_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dovecot.if serefpolicy-3.1.2/policy/modules/services/dovecot.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dovecot.if serefpolicy-3.2.1/policy/modules/services/dovecot.if
--- nsaserefpolicy/policy/modules/services/dovecot.if 2007-01-02 12:57:43.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/dovecot.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/dovecot.if 2007-11-30 11:23:56.000000000 -0500
@@ -18,3 +18,43 @@
manage_files_pattern($1,dovecot_spool_t,dovecot_spool_t)
manage_lnk_files_pattern($1,dovecot_spool_t,dovecot_spool_t)
@@ -5742,9 +6397,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dove
+ domtrans_pattern($1,dovecot_deliver_exec_t,dovecot_deliver_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dovecot.te serefpolicy-3.1.2/policy/modules/services/dovecot.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dovecot.te serefpolicy-3.2.1/policy/modules/services/dovecot.te
--- nsaserefpolicy/policy/modules/services/dovecot.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/dovecot.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/dovecot.te 2007-11-30 11:23:56.000000000 -0500
@@ -15,6 +15,12 @@
domain_entry_file(dovecot_auth_t,dovecot_auth_exec_t)
role system_r types dovecot_auth_t;
@@ -5917,9 +6572,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/dove
+ mta_manage_spool(dovecot_deliver_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/exim.if serefpolicy-3.1.2/policy/modules/services/exim.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/exim.if serefpolicy-3.2.1/policy/modules/services/exim.if
--- nsaserefpolicy/policy/modules/services/exim.if 2007-10-24 15:00:24.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/exim.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/exim.if 2007-11-30 11:23:56.000000000 -0500
@@ -117,6 +117,27 @@
########################################
@@ -5948,9 +6603,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/exim
## Read exim spool files.
##
##
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/exim.te serefpolicy-3.1.2/policy/modules/services/exim.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/exim.te serefpolicy-3.2.1/policy/modules/services/exim.te
--- nsaserefpolicy/policy/modules/services/exim.te 2007-10-24 15:17:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/exim.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/exim.te 2007-11-30 11:23:56.000000000 -0500
@@ -21,9 +21,20 @@
##
gen_tunable(exim_manage_user_files,false)
@@ -6127,9 +6782,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/exim
+ exim_manage_var_lib(exim_lib_update_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ftp.if serefpolicy-3.1.2/policy/modules/services/ftp.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ftp.if serefpolicy-3.2.1/policy/modules/services/ftp.if
--- nsaserefpolicy/policy/modules/services/ftp.if 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/ftp.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/ftp.if 2007-11-30 11:23:56.000000000 -0500
@@ -28,11 +28,13 @@
type ftpd_t;
')
@@ -6149,9 +6804,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ftp.
')
########################################
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ftp.te serefpolicy-3.1.2/policy/modules/services/ftp.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ftp.te serefpolicy-3.2.1/policy/modules/services/ftp.te
--- nsaserefpolicy/policy/modules/services/ftp.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/ftp.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/ftp.te 2007-11-30 11:23:56.000000000 -0500
@@ -8,8 +8,8 @@
##
@@ -6232,9 +6887,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ftp.
')
optional_policy(`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/hal.fc serefpolicy-3.1.2/policy/modules/services/hal.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/hal.fc serefpolicy-3.2.1/policy/modules/services/hal.fc
--- nsaserefpolicy/policy/modules/services/hal.fc 2007-11-14 08:17:58.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/hal.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/hal.fc 2007-11-30 11:23:56.000000000 -0500
@@ -8,18 +8,21 @@
/usr/libexec/hal-hotplug-map -- gen_context(system_u:object_r:hald_exec_t,s0)
/usr/libexec/hal-system-sonypic -- gen_context(system_u:object_r:hald_sonypic_exec_t,s0)
@@ -6259,9 +6914,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/hal.
ifdef(`distro_gentoo',`
/var/lib/cache/hald(/.*)? gen_context(system_u:object_r:hald_cache_t,s0)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/hal.te serefpolicy-3.1.2/policy/modules/services/hal.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/hal.te serefpolicy-3.2.1/policy/modules/services/hal.te
--- nsaserefpolicy/policy/modules/services/hal.te 2007-11-14 08:17:58.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/hal.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/hal.te 2007-11-30 11:23:56.000000000 -0500
@@ -49,6 +49,9 @@
type hald_var_lib_t;
files_type(hald_var_lib_t)
@@ -6321,9 +6976,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/hal.
libs_use_ld_so(hald_mac_t)
libs_use_shared_libs(hald_mac_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/inetd.te serefpolicy-3.1.2/policy/modules/services/inetd.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/inetd.te serefpolicy-3.2.1/policy/modules/services/inetd.te
--- nsaserefpolicy/policy/modules/services/inetd.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/inetd.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/inetd.te 2007-11-30 11:23:56.000000000 -0500
@@ -30,6 +30,10 @@
type inetd_child_var_run_t;
files_pid_file(inetd_child_var_run_t)
@@ -6377,17 +7032,17 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/inet
+optional_policy(`
+ inetd_service_domain(inetd_child_t,bin_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/kerberos.fc serefpolicy-3.1.2/policy/modules/services/kerberos.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/kerberos.fc serefpolicy-3.2.1/policy/modules/services/kerberos.fc
--- nsaserefpolicy/policy/modules/services/kerberos.fc 2006-11-16 17:15:21.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/kerberos.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/kerberos.fc 2007-11-30 11:23:56.000000000 -0500
@@ -16,3 +16,4 @@
/var/log/krb5kdc\.log gen_context(system_u:object_r:krb5kdc_log_t,s0)
/var/log/kadmin(d)?\.log gen_context(system_u:object_r:kadmind_log_t,s0)
+/var/tmp/host_0 -- gen_context(system_u:object_r:krb5_host_rcache_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/kerberos.if serefpolicy-3.1.2/policy/modules/services/kerberos.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/kerberos.if serefpolicy-3.2.1/policy/modules/services/kerberos.if
--- nsaserefpolicy/policy/modules/services/kerberos.if 2007-07-16 14:09:46.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/kerberos.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/kerberos.if 2007-11-30 11:23:56.000000000 -0500
@@ -43,7 +43,13 @@
dontaudit $1 krb5kdc_conf_t:dir list_dir_perms;
dontaudit $1 krb5kdc_conf_t:file rw_file_perms;
@@ -6466,9 +7121,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/kerb
+ corenet_udp_bind_all_nodes($1)
+ ')
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/kerberos.te serefpolicy-3.1.2/policy/modules/services/kerberos.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/kerberos.te serefpolicy-3.2.1/policy/modules/services/kerberos.te
--- nsaserefpolicy/policy/modules/services/kerberos.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/kerberos.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/kerberos.te 2007-11-30 11:23:56.000000000 -0500
@@ -8,7 +8,7 @@
##
@@ -6556,9 +7211,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/kerb
')
optional_policy(`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ldap.te serefpolicy-3.1.2/policy/modules/services/ldap.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ldap.te serefpolicy-3.2.1/policy/modules/services/ldap.te
--- nsaserefpolicy/policy/modules/services/ldap.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/ldap.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/ldap.te 2007-11-30 11:23:56.000000000 -0500
@@ -42,7 +42,6 @@
dontaudit slapd_t self:capability sys_tty_config;
allow slapd_t self:process setsched;
@@ -6596,9 +7251,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ldap
seutil_sigchld_newrole(slapd_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mailman.te serefpolicy-3.1.2/policy/modules/services/mailman.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mailman.te serefpolicy-3.2.1/policy/modules/services/mailman.te
--- nsaserefpolicy/policy/modules/services/mailman.te 2007-07-10 13:21:26.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/mailman.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/mailman.te 2007-11-30 11:23:56.000000000 -0500
@@ -55,6 +55,8 @@
apache_use_fds(mailman_cgi_t)
apache_dontaudit_append_log(mailman_cgi_t)
@@ -6629,15 +7284,15 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mail
files_dontaudit_search_pids(mailman_queue_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mailscanner.fc serefpolicy-3.1.2/policy/modules/services/mailscanner.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mailscanner.fc serefpolicy-3.2.1/policy/modules/services/mailscanner.fc
--- nsaserefpolicy/policy/modules/services/mailscanner.fc 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/mailscanner.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/mailscanner.fc 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,2 @@
+/var/spool/MailScanner(/.*)? gen_context(system_u:object_r:mailscanner_spool_t,s0)
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mailscanner.if serefpolicy-3.1.2/policy/modules/services/mailscanner.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mailscanner.if serefpolicy-3.2.1/policy/modules/services/mailscanner.if
--- nsaserefpolicy/policy/modules/services/mailscanner.if 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/mailscanner.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/mailscanner.if 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,59 @@
+## Anti-Virus and Anti-Spam Filter
+
@@ -6698,18 +7353,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mail
+ files_search_spool($1)
+ manage_files_pattern($1,mailscanner_spool_t,mailscanner_spool_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mailscanner.te serefpolicy-3.1.2/policy/modules/services/mailscanner.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mailscanner.te serefpolicy-3.2.1/policy/modules/services/mailscanner.te
--- nsaserefpolicy/policy/modules/services/mailscanner.te 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/mailscanner.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/mailscanner.te 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,5 @@
+
+policy_module(mailscanner,1.0.0)
+
+type mailscanner_spool_t;
+files_type(mailscanner_spool_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mta.if serefpolicy-3.1.2/policy/modules/services/mta.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mta.if serefpolicy-3.2.1/policy/modules/services/mta.if
--- nsaserefpolicy/policy/modules/services/mta.if 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/mta.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/mta.if 2007-11-30 11:23:56.000000000 -0500
@@ -87,6 +87,8 @@
# It wants to check for nscd
files_dontaudit_search_pids($1_mail_t)
@@ -6870,9 +7525,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mta.
#######################################
##
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mta.te serefpolicy-3.1.2/policy/modules/services/mta.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mta.te serefpolicy-3.2.1/policy/modules/services/mta.te
--- nsaserefpolicy/policy/modules/services/mta.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/mta.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/mta.te 2007-11-30 11:23:56.000000000 -0500
@@ -6,6 +6,8 @@
# Declarations
#
@@ -6949,18 +7604,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mta.
logrotate_read_tmp_files(system_mail_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mysql.fc serefpolicy-3.1.2/policy/modules/services/mysql.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mysql.fc serefpolicy-3.2.1/policy/modules/services/mysql.fc
--- nsaserefpolicy/policy/modules/services/mysql.fc 2006-11-16 17:15:20.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/mysql.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/mysql.fc 2007-11-30 11:23:56.000000000 -0500
@@ -22,3 +22,5 @@
/var/log/mysql.* -- gen_context(system_u:object_r:mysqld_log_t,s0)
/var/run/mysqld(/.*)? gen_context(system_u:object_r:mysqld_var_run_t,s0)
+
+/etc/rc\.d/init\.d/mysqld -- gen_context(system_u:object_r:mysqld_script_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mysql.if serefpolicy-3.1.2/policy/modules/services/mysql.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mysql.if serefpolicy-3.2.1/policy/modules/services/mysql.if
--- nsaserefpolicy/policy/modules/services/mysql.if 2007-01-02 12:57:43.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/mysql.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/mysql.if 2007-11-30 11:23:56.000000000 -0500
@@ -157,3 +157,79 @@
logging_search_logs($1)
allow $1 mysqld_log_t:file { write append setattr ioctl };
@@ -7041,9 +7696,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mysq
+ manage_dirs_pattern($1,mysqld_tmp_t,mysqld_tmp_t)
+ manage_files_pattern($1,mysqld_tmp_t,mysqld_tmp_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mysql.te serefpolicy-3.1.2/policy/modules/services/mysql.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mysql.te serefpolicy-3.2.1/policy/modules/services/mysql.te
--- nsaserefpolicy/policy/modules/services/mysql.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/mysql.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/mysql.te 2007-11-30 11:23:56.000000000 -0500
@@ -25,6 +25,9 @@
type mysqld_tmp_t;
files_tmp_file(mysqld_tmp_t)
@@ -7054,9 +7709,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/mysq
########################################
#
# Local policy
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nagios.fc serefpolicy-3.1.2/policy/modules/services/nagios.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nagios.fc serefpolicy-3.2.1/policy/modules/services/nagios.fc
--- nsaserefpolicy/policy/modules/services/nagios.fc 2006-11-16 17:15:20.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/nagios.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/nagios.fc 2007-11-30 11:23:56.000000000 -0500
@@ -4,13 +4,15 @@
/usr/bin/nagios -- gen_context(system_u:object_r:nagios_exec_t,s0)
/usr/bin/nrpe -- gen_context(system_u:object_r:nrpe_exec_t,s0)
@@ -7076,9 +7731,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nagi
-/usr/lib/cgi-bin/nagios/.+ -- gen_context(system_u:object_r:nagios_cgi_exec_t,s0)
')
+/usr/lib(64)?/cgi-bin/nagios(/.+)? gen_context(system_u:object_r:httpd_nagios_script_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nagios.if serefpolicy-3.1.2/policy/modules/services/nagios.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nagios.if serefpolicy-3.2.1/policy/modules/services/nagios.if
--- nsaserefpolicy/policy/modules/services/nagios.if 2007-01-02 12:57:43.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/nagios.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/nagios.if 2007-11-30 11:23:56.000000000 -0500
@@ -44,25 +44,6 @@
########################################
@@ -7105,9 +7760,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nagi
## Execute the nagios NRPE with
## a domain transition.
##
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nagios.te serefpolicy-3.1.2/policy/modules/services/nagios.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nagios.te serefpolicy-3.2.1/policy/modules/services/nagios.te
--- nsaserefpolicy/policy/modules/services/nagios.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/nagios.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/nagios.te 2007-11-30 11:23:56.000000000 -0500
@@ -8,11 +8,7 @@
type nagios_t;
@@ -7217,17 +7872,17 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nagi
########################################
#
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/networkmanager.fc serefpolicy-3.1.2/policy/modules/services/networkmanager.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/networkmanager.fc serefpolicy-3.2.1/policy/modules/services/networkmanager.fc
--- nsaserefpolicy/policy/modules/services/networkmanager.fc 2007-09-12 10:34:18.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/networkmanager.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/networkmanager.fc 2007-11-30 11:23:56.000000000 -0500
@@ -5,3 +5,4 @@
/var/run/NetworkManager(/.*)? gen_context(system_u:object_r:NetworkManager_var_run_t,s0)
/var/run/wpa_supplicant(/.*)? gen_context(system_u:object_r:NetworkManager_var_run_t,s0)
/var/run/wpa_supplicant-global -s gen_context(system_u:object_r:NetworkManager_var_run_t,s0)
+/var/log/wpa_supplicant\.log -- gen_context(system_u:object_r:NetworkManager_log_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/networkmanager.te serefpolicy-3.1.2/policy/modules/services/networkmanager.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/networkmanager.te serefpolicy-3.2.1/policy/modules/services/networkmanager.te
--- nsaserefpolicy/policy/modules/services/networkmanager.te 2007-10-29 07:52:49.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/networkmanager.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/networkmanager.te 2007-11-30 11:23:56.000000000 -0500
@@ -13,6 +13,9 @@
type NetworkManager_var_run_t;
files_pid_file(NetworkManager_var_run_t)
@@ -7286,20 +7941,20 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/netw
')
optional_policy(`
-@@ -166,8 +178,10 @@
+@@ -166,8 +178,9 @@
')
optional_policy(`
+ unconfined_rw_pipes(NetworkManager_t)
# Read gnome-keyring
- unconfined_read_home_content_files(NetworkManager_t)
+- unconfined_read_home_content_files(NetworkManager_t)
+ unconfined_use_terminals(NetworkManager_t)
')
optional_policy(`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis.fc serefpolicy-3.1.2/policy/modules/services/nis.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis.fc serefpolicy-3.2.1/policy/modules/services/nis.fc
--- nsaserefpolicy/policy/modules/services/nis.fc 2007-02-19 11:32:53.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/nis.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/nis.fc 2007-11-30 11:23:56.000000000 -0500
@@ -4,6 +4,7 @@
/sbin/ypbind -- gen_context(system_u:object_r:ypbind_exec_t,s0)
@@ -7308,9 +7963,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis.
/usr/sbin/rpc\.yppasswdd -- gen_context(system_u:object_r:yppasswdd_exec_t,s0)
/usr/sbin/rpc\.ypxfrd -- gen_context(system_u:object_r:ypxfr_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis.if serefpolicy-3.1.2/policy/modules/services/nis.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis.if serefpolicy-3.2.1/policy/modules/services/nis.if
--- nsaserefpolicy/policy/modules/services/nis.if 2007-07-16 14:09:46.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/nis.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/nis.if 2007-11-30 11:23:56.000000000 -0500
@@ -49,8 +49,8 @@
corenet_udp_bind_all_nodes($1)
corenet_tcp_bind_generic_port($1)
@@ -7348,9 +8003,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis.
## Execute ypbind in the ypbind domain.
##
##
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis.te serefpolicy-3.1.2/policy/modules/services/nis.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis.te serefpolicy-3.2.1/policy/modules/services/nis.te
--- nsaserefpolicy/policy/modules/services/nis.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/nis.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/nis.te 2007-11-30 11:23:56.000000000 -0500
@@ -113,6 +113,17 @@
userdom_dontaudit_use_unpriv_user_fds(ypbind_t)
userdom_dontaudit_search_sysadm_home_dirs(ypbind_t)
@@ -7406,18 +8061,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis.
corenet_dontaudit_tcp_bind_all_reserved_ports(ypxfr_t)
corenet_dontaudit_udp_bind_all_reserved_ports(ypxfr_t)
corenet_tcp_connect_all_ports(ypxfr_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nscd.fc serefpolicy-3.1.2/policy/modules/services/nscd.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nscd.fc serefpolicy-3.2.1/policy/modules/services/nscd.fc
--- nsaserefpolicy/policy/modules/services/nscd.fc 2006-11-16 17:15:20.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/nscd.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/nscd.fc 2007-11-30 11:23:56.000000000 -0500
@@ -9,3 +9,5 @@
/var/run/\.nscd_socket -s gen_context(system_u:object_r:nscd_var_run_t,s0)
/var/run/nscd(/.*)? gen_context(system_u:object_r:nscd_var_run_t,s0)
+
+/etc/rc\.d/init\.d/nscd -- gen_context(system_u:object_r:httpd_script_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nscd.if serefpolicy-3.1.2/policy/modules/services/nscd.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nscd.if serefpolicy-3.2.1/policy/modules/services/nscd.if
--- nsaserefpolicy/policy/modules/services/nscd.if 2007-03-26 10:39:04.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/nscd.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/nscd.if 2007-11-30 11:23:56.000000000 -0500
@@ -70,15 +70,14 @@
interface(`nscd_socket_use',`
gen_require(`
@@ -7459,9 +8114,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nscd
+ init_script_domtrans_spec($1,nscd_script_exec_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nscd.te serefpolicy-3.1.2/policy/modules/services/nscd.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nscd.te serefpolicy-3.2.1/policy/modules/services/nscd.te
--- nsaserefpolicy/policy/modules/services/nscd.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/nscd.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/nscd.te 2007-11-30 11:23:56.000000000 -0500
@@ -23,19 +23,22 @@
type nscd_log_t;
logging_log_file(nscd_log_t)
@@ -7527,9 +8182,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nscd
+ samba_read_config(nscd_t)
+ samba_read_var_files(nscd_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ntp.fc serefpolicy-3.1.2/policy/modules/services/ntp.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ntp.fc serefpolicy-3.2.1/policy/modules/services/ntp.fc
--- nsaserefpolicy/policy/modules/services/ntp.fc 2006-11-16 17:15:21.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/ntp.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/ntp.fc 2007-11-30 11:23:56.000000000 -0500
@@ -17,3 +17,8 @@
/var/log/xntpd.* -- gen_context(system_u:object_r:ntpd_log_t,s0)
@@ -7539,9 +8194,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ntp.
+/etc/ntp/keys -- gen_context(system_u:object_r:ntpd_key_t,s0)
+
+/etc/rc\.d/init\.d/ntpd -- gen_context(system_u:object_r:ntpd_script_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ntp.if serefpolicy-3.1.2/policy/modules/services/ntp.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ntp.if serefpolicy-3.2.1/policy/modules/services/ntp.if
--- nsaserefpolicy/policy/modules/services/ntp.if 2007-03-26 10:39:05.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/ntp.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/ntp.if 2007-11-30 11:23:56.000000000 -0500
@@ -53,3 +53,22 @@
corecmd_search_bin($1)
domtrans_pattern($1,ntpdate_exec_t,ntpd_t)
@@ -7565,9 +8220,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ntp.
+ init_script_domtrans_spec($1,ntpd_script_exec_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ntp.te serefpolicy-3.1.2/policy/modules/services/ntp.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ntp.te serefpolicy-3.2.1/policy/modules/services/ntp.te
--- nsaserefpolicy/policy/modules/services/ntp.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/ntp.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/ntp.te 2007-11-30 11:23:56.000000000 -0500
@@ -25,6 +25,12 @@
type ntpdate_exec_t;
init_system_domain(ntpd_t,ntpdate_exec_t)
@@ -7628,9 +8283,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ntp.
logrotate_exec(ntpd_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/openct.te serefpolicy-3.1.2/policy/modules/services/openct.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/openct.te serefpolicy-3.2.1/policy/modules/services/openct.te
--- nsaserefpolicy/policy/modules/services/openct.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/openct.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/openct.te 2007-11-30 11:23:56.000000000 -0500
@@ -22,6 +22,7 @@
allow openct_t self:process signal_perms;
@@ -7639,9 +8294,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/open
files_pid_filetrans(openct_t,openct_var_run_t,file)
kernel_read_kernel_sysctls(openct_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/openvpn.te serefpolicy-3.1.2/policy/modules/services/openvpn.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/openvpn.te serefpolicy-3.2.1/policy/modules/services/openvpn.te
--- nsaserefpolicy/policy/modules/services/openvpn.te 2007-10-29 07:52:49.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/openvpn.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/openvpn.te 2007-11-30 11:23:56.000000000 -0500
@@ -8,7 +8,7 @@
##
@@ -7664,9 +8319,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/open
+ unconfined_use_terminals(openvpn_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/pcscd.te serefpolicy-3.1.2/policy/modules/services/pcscd.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/pcscd.te serefpolicy-3.2.1/policy/modules/services/pcscd.te
--- nsaserefpolicy/policy/modules/services/pcscd.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/pcscd.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/pcscd.te 2007-11-30 11:23:56.000000000 -0500
@@ -45,6 +45,7 @@
files_read_etc_files(pcscd_t)
files_read_etc_runtime_files(pcscd_t)
@@ -7675,9 +8330,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/pcsc
term_dontaudit_getattr_pty_dirs(pcscd_t)
libs_use_ld_so(pcscd_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/pegasus.te serefpolicy-3.1.2/policy/modules/services/pegasus.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/pegasus.te serefpolicy-3.2.1/policy/modules/services/pegasus.te
--- nsaserefpolicy/policy/modules/services/pegasus.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/pegasus.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/pegasus.te 2007-11-30 11:23:56.000000000 -0500
@@ -42,6 +42,7 @@
allow pegasus_t pegasus_conf_t:file { read_file_perms link unlink };
allow pegasus_t pegasus_conf_t:lnk_file read_lnk_file_perms;
@@ -7725,9 +8380,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/pega
rpm_exec(pegasus_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/portslave.te serefpolicy-3.1.2/policy/modules/services/portslave.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/portslave.te serefpolicy-3.2.1/policy/modules/services/portslave.te
--- nsaserefpolicy/policy/modules/services/portslave.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/portslave.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/portslave.te 2007-11-30 11:23:56.000000000 -0500
@@ -85,6 +85,7 @@
auth_rw_login_records(portslave_t)
@@ -7736,9 +8391,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/port
init_rw_utmp(portslave_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postfix.fc serefpolicy-3.1.2/policy/modules/services/postfix.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postfix.fc serefpolicy-3.2.1/policy/modules/services/postfix.fc
--- nsaserefpolicy/policy/modules/services/postfix.fc 2007-09-12 10:34:18.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/postfix.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/postfix.fc 2007-11-30 11:23:56.000000000 -0500
@@ -29,12 +29,10 @@
/usr/lib/postfix/smtpd -- gen_context(system_u:object_r:postfix_smtpd_exec_t,s0)
/usr/lib/postfix/bounce -- gen_context(system_u:object_r:postfix_bounce_exec_t,s0)
@@ -7752,9 +8407,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/post
/usr/sbin/postdrop -- gen_context(system_u:object_r:postfix_postdrop_exec_t,s0)
/usr/sbin/postfix -- gen_context(system_u:object_r:postfix_master_exec_t,s0)
/usr/sbin/postkick -- gen_context(system_u:object_r:postfix_master_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postfix.if serefpolicy-3.1.2/policy/modules/services/postfix.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postfix.if serefpolicy-3.2.1/policy/modules/services/postfix.if
--- nsaserefpolicy/policy/modules/services/postfix.if 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/postfix.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/postfix.if 2007-11-30 11:23:56.000000000 -0500
@@ -83,6 +83,8 @@
init_dontaudit_use_fds(postfix_$1_t)
init_sigchld(postfix_$1_t)
@@ -7801,9 +8456,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/post
## Execute the master postfix program in the
## postfix_master domain.
##
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postfix.te serefpolicy-3.1.2/policy/modules/services/postfix.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postfix.te serefpolicy-3.2.1/policy/modules/services/postfix.te
--- nsaserefpolicy/policy/modules/services/postfix.te 2007-11-08 09:29:27.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/postfix.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/postfix.te 2007-11-30 11:23:56.000000000 -0500
@@ -6,6 +6,14 @@
# Declarations
#
@@ -7981,19 +8636,19 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/post
########################################
#
# Postfix virtual local policy
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postgresql.fc serefpolicy-3.1.2/policy/modules/services/postgresql.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postgresql.fc serefpolicy-3.2.1/policy/modules/services/postgresql.fc
--- nsaserefpolicy/policy/modules/services/postgresql.fc 2006-11-16 17:15:21.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/postgresql.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/postgresql.fc 2007-11-30 11:23:56.000000000 -0500
@@ -38,3 +38,5 @@
')
/var/run/postgresql(/.*)? gen_context(system_u:object_r:postgresql_var_run_t,s0)
+
+/etc/rc\.d/init\.d/postgresql -- gen_context(system_u:object_r:postgresql_script_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postgresql.if serefpolicy-3.1.2/policy/modules/services/postgresql.if
---- nsaserefpolicy/policy/modules/services/postgresql.if 2007-01-02 12:57:43.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/postgresql.if 2007-11-26 16:40:13.000000000 -0500
-@@ -113,3 +113,77 @@
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postgresql.if serefpolicy-3.2.1/policy/modules/services/postgresql.if
+--- nsaserefpolicy/policy/modules/services/postgresql.if 2007-11-29 13:29:35.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/postgresql.if 2007-11-30 11:23:56.000000000 -0500
+@@ -120,3 +120,77 @@
# Some versions of postgresql put the sock file in /tmp
allow $1 postgresql_tmp_t:sock_file write;
')
@@ -8071,9 +8726,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/post
+ manage_dirs_pattern($1,postgresql_tmp_t,postgresql_tmp_t)
+ manage_files_pattern($1,postgresql_tmp_t,postgresql_tmp_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postgresql.te serefpolicy-3.1.2/policy/modules/services/postgresql.te
---- nsaserefpolicy/policy/modules/services/postgresql.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/postgresql.te 2007-11-26 16:40:13.000000000 -0500
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/postgresql.te serefpolicy-3.2.1/policy/modules/services/postgresql.te
+--- nsaserefpolicy/policy/modules/services/postgresql.te 2007-11-29 13:29:35.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/postgresql.te 2007-11-30 11:23:56.000000000 -0500
@@ -27,6 +27,9 @@
type postgresql_var_run_t;
files_pid_file(postgresql_var_run_t)
@@ -8111,7 +8766,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/post
userdom_dontaudit_search_sysadm_home_dirs(postgresql_t)
userdom_dontaudit_use_sysadm_ttys(postgresql_t)
userdom_dontaudit_use_unpriv_user_fds(postgresql_t)
-@@ -158,10 +159,6 @@
+@@ -162,10 +163,6 @@
')
optional_policy(`
@@ -8122,9 +8777,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/post
seutil_sigchld_newrole(postgresql_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ppp.fc serefpolicy-3.1.2/policy/modules/services/ppp.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ppp.fc serefpolicy-3.2.1/policy/modules/services/ppp.fc
--- nsaserefpolicy/policy/modules/services/ppp.fc 2006-11-16 17:15:20.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/ppp.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/ppp.fc 2007-11-30 11:23:56.000000000 -0500
@@ -25,7 +25,7 @@
#
# /var
@@ -8134,9 +8789,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ppp.
/var/run/pppd[0-9]*\.tdb -- gen_context(system_u:object_r:pppd_var_run_t,s0)
/var/run/ppp(/.*)? gen_context(system_u:object_r:pppd_var_run_t,s0)
# Fix pptp sockets
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ppp.te serefpolicy-3.1.2/policy/modules/services/ppp.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ppp.te serefpolicy-3.2.1/policy/modules/services/ppp.te
--- nsaserefpolicy/policy/modules/services/ppp.te 2007-11-16 13:45:14.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/ppp.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/ppp.te 2007-11-30 11:23:56.000000000 -0500
@@ -194,6 +194,8 @@
optional_policy(`
@@ -8146,9 +8801,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ppp.
')
optional_policy(`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/procmail.te serefpolicy-3.1.2/policy/modules/services/procmail.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/procmail.te serefpolicy-3.2.1/policy/modules/services/procmail.te
--- nsaserefpolicy/policy/modules/services/procmail.te 2007-11-16 13:45:14.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/procmail.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/procmail.te 2007-11-30 11:23:56.000000000 -0500
@@ -133,3 +133,7 @@
spamassassin_exec_client(procmail_t)
spamassassin_read_lib_files(procmail_t)
@@ -8157,42 +8812,62 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/proc
+optional_policy(`
+ mailscanner_read_spool(procmail_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/pyzor.if serefpolicy-3.1.2/policy/modules/services/pyzor.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/pyzor.fc serefpolicy-3.2.1/policy/modules/services/pyzor.fc
+--- nsaserefpolicy/policy/modules/services/pyzor.fc 2007-10-12 08:56:07.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/services/pyzor.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,6 +1,6 @@
+ /etc/pyzor(/.*)? gen_context(system_u:object_r:pyzor_etc_t, s0)
+
+-HOME_DIR/\.pyzor(/.*)? gen_context(system_u:object_r:ROLE_pyzor_home_t,s0)
++HOME_DIR/\.pyzor(/.*)? gen_context(system_u:object_r:user_pyzor_home_t,s0)
+
+ /usr/bin/pyzor -- gen_context(system_u:object_r:pyzor_exec_t,s0)
+ /usr/bin/pyzord -- gen_context(system_u:object_r:pyzord_exec_t,s0)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/pyzor.if serefpolicy-3.2.1/policy/modules/services/pyzor.if
--- nsaserefpolicy/policy/modules/services/pyzor.if 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/pyzor.if 2007-11-26 16:40:13.000000000 -0500
-@@ -25,16 +25,16 @@
++++ serefpolicy-3.2.1/policy/modules/services/pyzor.if 2007-11-30 11:23:56.000000000 -0500
+@@ -25,16 +25,18 @@
#
template(`pyzor_per_role_template',`
gen_require(`
- type pyzord_t;
+ type pyzor_t;
++ type user_pyzor_home_t;
')
- type $1_pyzor_home_t;
+- type $1_pyzor_home_t;
- userdom_user_home_content($1, $1_pyzor_home_t)
-+ userdom_user_home_content($1,$1_pyzor_home_t)
++ ifelse(`$1',`user',`',`
++ typealias user_pyzor_home_t alias $1_pyzor_home_t;
++ ')
- manage_dirs_pattern(pyzord_t, $1_pyzor_home_t, $1_pyzor_home_t)
- manage_files_pattern(pyzord_t, $1_pyzor_home_t, $1_pyzor_home_t)
- manage_lnk_files_pattern(pyzord_t, $1_pyzor_home_t, $1_pyzor_home_t)
- userdom_user_home_dir_filetrans($1, pyzord_t, $1_pyzor_home_t, { dir file lnk_file })
-+ manage_dirs_pattern(pyzor_t,$1_pyzor_home_t,$1_pyzor_home_t)
-+ manage_files_pattern(pyzor_t,$1_pyzor_home_t,$1_pyzor_home_t)
-+ manage_lnk_files_pattern(pyzor_t,$1_pyzor_home_t,$1_pyzor_home_t)
-+ userdom_user_home_dir_filetrans($1,pyzor_t,$1_pyzor_home_t,{ dir file lnk_file })
++ manage_dirs_pattern(pyzor_t,user_pyzor_home_t,user_pyzor_home_t)
++ manage_files_pattern(pyzor_t,user_pyzor_home_t,user_pyzor_home_t)
++ manage_lnk_files_pattern(pyzor_t,user_pyzor_home_t,user_pyzor_home_t)
++ userdom_user_home_dir_filetrans($1,pyzor_t,user_pyzor_home_t,{ dir file lnk_file })
')
########################################
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/radius.te serefpolicy-3.1.2/policy/modules/services/radius.te
---- nsaserefpolicy/policy/modules/services/radius.te 2007-11-16 13:45:14.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/radius.te 2007-11-26 16:40:13.000000000 -0500
-@@ -1,5 +1,5 @@
-
--policy_module(radius,1.5.3)
-+policy_module(radius,1.5.2)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/pyzor.te serefpolicy-3.2.1/policy/modules/services/pyzor.te
+--- nsaserefpolicy/policy/modules/services/pyzor.te 2007-10-12 08:56:07.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/services/pyzor.te 2007-11-30 11:23:56.000000000 -0500
+@@ -28,6 +28,9 @@
+ type pyzor_var_lib_t;
+ files_type(pyzor_var_lib_t)
++type user_pyzor_home_t;
++userdom_user_home_content(user,user_pyzor_home_t)
++
########################################
#
+ # Pyzor local policy
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/radius.te serefpolicy-3.2.1/policy/modules/services/radius.te
+--- nsaserefpolicy/policy/modules/services/radius.te 2007-11-16 13:45:14.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/radius.te 2007-11-30 11:23:56.000000000 -0500
@@ -88,6 +88,7 @@
auth_read_shadow(radiusd_t)
@@ -8201,9 +8876,62 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/radi
corecmd_exec_bin(radiusd_t)
corecmd_exec_shell(radiusd_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/remotelogin.if serefpolicy-3.1.2/policy/modules/services/remotelogin.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/razor.fc serefpolicy-3.2.1/policy/modules/services/razor.fc
+--- nsaserefpolicy/policy/modules/services/razor.fc 2007-10-12 08:56:07.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/services/razor.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,4 +1,4 @@
+-HOME_DIR/\.razor(/.*)? gen_context(system_u:object_r:ROLE_razor_home_t,s0)
++HOME_DIR/\.razor(/.*)? gen_context(system_u:object_r:user_razor_home_t,s0)
+
+ /etc/razor(/.*)? gen_context(system_u:object_r:razor_etc_t,s0)
+
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/razor.if serefpolicy-3.2.1/policy/modules/services/razor.if
+--- nsaserefpolicy/policy/modules/services/razor.if 2007-07-16 14:09:46.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/services/razor.if 2007-11-30 11:23:56.000000000 -0500
+@@ -137,6 +137,7 @@
+ template(`razor_per_role_template',`
+ gen_require(`
+ type razor_exec_t;
++ type user_razor_home_t, user_razor_tmp_t;
+ ')
+
+ type $1_razor_t;
+@@ -145,12 +146,10 @@
+ razor_common_domain_template($1_razor)
+ role $3 types $1_razor_t;
+
+- type $1_razor_home_t alias $1_razor_rw_t;
+- files_poly_member($1_razor_home_t)
+- userdom_user_home_content($1,$1_razor_home_t)
+-
+- type $1_razor_tmp_t;
+- files_tmp_file($1_razor_tmp_t)
++ ifelse(`$1',`user',`',`
++ typealias user_razor_home_t alias $1_razor_home_t;
++ typealias user_razor_tmp_t alias $1_razor_tmp_t;
++ ')
+
+ ##############################
+ #
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/razor.te serefpolicy-3.2.1/policy/modules/services/razor.te
+--- nsaserefpolicy/policy/modules/services/razor.te 2007-10-12 08:56:07.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/services/razor.te 2007-11-30 11:23:56.000000000 -0500
+@@ -23,6 +23,12 @@
+
+ razor_common_domain_template(razor)
+
++type user_razor_home_t;
++userdom_user_home_content(user,user_razor_home_t)
++
++type user_razor_tmp_t;
++files_tmp_file(user_razor_tmp_t)
++
+ ########################################
+ #
+ # Local policy
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/remotelogin.if serefpolicy-3.2.1/policy/modules/services/remotelogin.if
--- nsaserefpolicy/policy/modules/services/remotelogin.if 2006-11-16 17:15:21.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/remotelogin.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/remotelogin.if 2007-11-30 11:23:56.000000000 -0500
@@ -18,3 +18,20 @@
auth_domtrans_login_program($1,remote_login_t)
')
@@ -8225,9 +8953,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/remo
+
+ allow $1 remote_login_t:process signal;
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/remotelogin.te serefpolicy-3.1.2/policy/modules/services/remotelogin.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/remotelogin.te serefpolicy-3.2.1/policy/modules/services/remotelogin.te
--- nsaserefpolicy/policy/modules/services/remotelogin.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/remotelogin.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/remotelogin.te 2007-11-30 11:23:56.000000000 -0500
@@ -85,6 +85,7 @@
miscfiles_read_localization(remote_login_t)
@@ -8236,9 +8964,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/remo
userdom_use_unpriv_users_fds(remote_login_t)
userdom_search_all_users_home_content(remote_login_t)
# Only permit unprivileged user domains to be entered via rlogin,
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ricci.te serefpolicy-3.1.2/policy/modules/services/ricci.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ricci.te serefpolicy-3.2.1/policy/modules/services/ricci.te
--- nsaserefpolicy/policy/modules/services/ricci.te 2007-11-16 13:45:14.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/ricci.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/ricci.te 2007-11-30 11:23:56.000000000 -0500
@@ -138,6 +138,7 @@
files_create_boot_flag(ricci_t)
@@ -8258,9 +8986,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ricc
unconfined_use_fds(ricci_modclusterd_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rlogin.te serefpolicy-3.1.2/policy/modules/services/rlogin.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rlogin.te serefpolicy-3.2.1/policy/modules/services/rlogin.te
--- nsaserefpolicy/policy/modules/services/rlogin.te 2007-10-02 09:54:52.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/rlogin.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/rlogin.te 2007-11-30 11:23:56.000000000 -0500
@@ -36,6 +36,8 @@
allow rlogind_t rlogind_devpts_t:chr_file { rw_chr_file_perms setattr };
term_create_pty(rlogind_t,rlogind_devpts_t)
@@ -8308,9 +9036,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rlog
-# Allow krb5 rlogind to use fork and open /dev/tty for use
-allow rlogind_t userpty_type:chr_file setattr;
-')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rpcbind.te serefpolicy-3.1.2/policy/modules/services/rpcbind.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rpcbind.te serefpolicy-3.2.1/policy/modules/services/rpcbind.te
--- nsaserefpolicy/policy/modules/services/rpcbind.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/rpcbind.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/rpcbind.te 2007-11-30 11:23:56.000000000 -0500
@@ -21,11 +21,13 @@
# rpcbind local policy
#
@@ -8326,9 +9054,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rpcb
allow rpcbind_t self:tcp_socket create_stream_socket_perms;
manage_files_pattern(rpcbind_t,rpcbind_var_run_t,rpcbind_var_run_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rpc.if serefpolicy-3.1.2/policy/modules/services/rpc.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rpc.if serefpolicy-3.2.1/policy/modules/services/rpc.if
--- nsaserefpolicy/policy/modules/services/rpc.if 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/rpc.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/rpc.if 2007-11-30 11:23:56.000000000 -0500
@@ -89,8 +89,11 @@
# bind to arbitary unused ports
corenet_tcp_bind_generic_port($1_t)
@@ -8367,9 +9095,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rpc.
## Read NFS exported content.
##
##
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rpc.te serefpolicy-3.1.2/policy/modules/services/rpc.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rpc.te serefpolicy-3.2.1/policy/modules/services/rpc.te
--- nsaserefpolicy/policy/modules/services/rpc.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/rpc.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/rpc.te 2007-11-30 11:23:56.000000000 -0500
@@ -8,7 +8,7 @@
##
@@ -8466,9 +9194,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rpc.
tunable_policy(`allow_gssd_read_tmp',`
userdom_list_unpriv_users_tmp(gssd_t)
userdom_read_unpriv_users_tmp_files(gssd_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rshd.te serefpolicy-3.1.2/policy/modules/services/rshd.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rshd.te serefpolicy-3.2.1/policy/modules/services/rshd.te
--- nsaserefpolicy/policy/modules/services/rshd.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/rshd.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/rshd.te 2007-11-30 11:23:56.000000000 -0500
@@ -16,7 +16,7 @@
#
# Local policy
@@ -8540,9 +9268,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rshd
unconfined_shell_domtrans(rshd_t)
+ unconfined_signal(rshd_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rsync.te serefpolicy-3.1.2/policy/modules/services/rsync.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rsync.te serefpolicy-3.2.1/policy/modules/services/rsync.te
--- nsaserefpolicy/policy/modules/services/rsync.te 2007-11-16 13:45:14.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/rsync.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/rsync.te 2007-11-30 11:23:56.000000000 -0500
@@ -8,7 +8,7 @@
##
@@ -8604,9 +9332,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/rsyn
fs_read_noxattr_fs_files(rsync_t)
auth_read_all_files_except_shadow(rsync_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samba.fc serefpolicy-3.1.2/policy/modules/services/samba.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samba.fc serefpolicy-3.2.1/policy/modules/services/samba.fc
--- nsaserefpolicy/policy/modules/services/samba.fc 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/samba.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/samba.fc 2007-11-30 11:23:56.000000000 -0500
@@ -15,6 +15,7 @@
/usr/bin/ntlm_auth -- gen_context(system_u:object_r:winbind_helper_exec_t,s0)
/usr/bin/smbmount -- gen_context(system_u:object_r:smbmount_exec_t,s0)
@@ -8624,9 +9352,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samb
/var/log/samba(/.*)? gen_context(system_u:object_r:samba_log_t,s0)
/var/run/samba/brlock\.tdb -- gen_context(system_u:object_r:smbd_var_run_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samba.if serefpolicy-3.1.2/policy/modules/services/samba.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samba.if serefpolicy-3.2.1/policy/modules/services/samba.if
--- nsaserefpolicy/policy/modules/services/samba.if 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/samba.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/samba.if 2007-11-30 11:23:56.000000000 -0500
@@ -331,6 +331,25 @@
########################################
@@ -8764,9 +9492,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samb
+ role $2 types smbcontrol_t;
+ dontaudit smbcontrol_t $3:chr_file rw_term_perms;
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samba.te serefpolicy-3.1.2/policy/modules/services/samba.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samba.te serefpolicy-3.2.1/policy/modules/services/samba.te
--- nsaserefpolicy/policy/modules/services/samba.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/samba.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/samba.te 2007-11-30 11:23:56.000000000 -0500
@@ -9,14 +9,14 @@
##
##
@@ -9225,9 +9953,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samb
+allow winbind_t smbcontrol_t:process signal;
+
+allow smbcontrol_t nmbd_var_run_t:file { read lock };
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/sasl.te serefpolicy-3.1.2/policy/modules/services/sasl.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/sasl.te serefpolicy-3.2.1/policy/modules/services/sasl.te
--- nsaserefpolicy/policy/modules/services/sasl.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/sasl.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/sasl.te 2007-11-30 11:23:56.000000000 -0500
@@ -64,6 +64,7 @@
selinux_compute_access_vector(saslauthd_t)
@@ -9247,9 +9975,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/sasl
seutil_sigchld_newrole(saslauthd_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/sendmail.if serefpolicy-3.1.2/policy/modules/services/sendmail.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/sendmail.if serefpolicy-3.2.1/policy/modules/services/sendmail.if
--- nsaserefpolicy/policy/modules/services/sendmail.if 2007-08-27 13:57:20.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/sendmail.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/sendmail.if 2007-11-30 11:23:56.000000000 -0500
@@ -149,3 +149,85 @@
logging_log_filetrans($1,sendmail_log_t,file)
@@ -9336,9 +10064,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/send
+ role $2 types unconfined_sendmail_t;
+ allow unconfined_sendmail_t $3:chr_file rw_file_perms;
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/sendmail.te serefpolicy-3.1.2/policy/modules/services/sendmail.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/sendmail.te serefpolicy-3.2.1/policy/modules/services/sendmail.te
--- nsaserefpolicy/policy/modules/services/sendmail.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/sendmail.te 2007-11-28 07:25:24.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/sendmail.te 2007-11-30 11:38:03.000000000 -0500
@@ -20,19 +20,22 @@
mta_mailserver_delivery(sendmail_t)
mta_mailserver_sender(sendmail_t)
@@ -9413,15 +10141,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/send
')
optional_policy(`
-@@ -131,10 +139,18 @@
- ')
-
- optional_policy(`
-+ rhgb_use_ptys(sendmail_t)
-+')
-+
-+optional_policy(`
- seutil_sigchld_newrole(sendmail_t)
+@@ -135,6 +143,10 @@
')
optional_policy(`
@@ -9432,7 +10152,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/send
udev_read_db(sendmail_t)
')
-@@ -156,3 +172,15 @@
+@@ -156,3 +168,15 @@
dontaudit sendmail_t admin_tty_type:chr_file { getattr ioctl };
') dnl end TODO
@@ -9448,18 +10168,20 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/send
+ unconfined_domain(unconfined_sendmail_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/setroubleshoot.te serefpolicy-3.1.2/policy/modules/services/setroubleshoot.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/setroubleshoot.te serefpolicy-3.2.1/policy/modules/services/setroubleshoot.te
--- nsaserefpolicy/policy/modules/services/setroubleshoot.te 2007-10-29 07:52:49.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/setroubleshoot.te 2007-11-26 16:40:13.000000000 -0500
-@@ -53,6 +53,7 @@
++++ serefpolicy-3.2.1/policy/modules/services/setroubleshoot.te 2007-11-30 11:30:59.000000000 -0500
+@@ -52,7 +52,9 @@
+
kernel_read_kernel_sysctls(setroubleshootd_t)
kernel_read_system_state(setroubleshootd_t)
++kernel_read_net_sysctls(setroubleshootd_t)
kernel_read_network_state(setroubleshootd_t)
+kernel_dontaudit_list_all_proc(setroubleshootd_t)
corecmd_exec_bin(setroubleshootd_t)
corecmd_exec_shell(setroubleshootd_t)
-@@ -110,6 +111,7 @@
+@@ -110,6 +112,7 @@
optional_policy(`
dbus_system_bus_client_template(setroubleshootd, setroubleshootd_t)
dbus_connect_system_bus(setroubleshootd_t)
@@ -9467,9 +10189,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/setr
')
optional_policy(`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/snmp.te serefpolicy-3.1.2/policy/modules/services/snmp.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/snmp.te serefpolicy-3.2.1/policy/modules/services/snmp.te
--- nsaserefpolicy/policy/modules/services/snmp.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/snmp.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/snmp.te 2007-11-30 11:23:56.000000000 -0500
@@ -81,8 +81,7 @@
files_read_usr_files(snmpd_t)
files_read_etc_runtime_files(snmpd_t)
@@ -9480,9 +10202,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/snmp
fs_getattr_all_dirs(snmpd_t)
fs_getattr_all_fs(snmpd_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/soundserver.fc serefpolicy-3.1.2/policy/modules/services/soundserver.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/soundserver.fc serefpolicy-3.2.1/policy/modules/services/soundserver.fc
--- nsaserefpolicy/policy/modules/services/soundserver.fc 2006-11-16 17:15:20.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/soundserver.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/soundserver.fc 2007-11-30 11:23:56.000000000 -0500
@@ -1,5 +1,3 @@
-/etc/nas(/.*)? gen_context(system_u:object_r:soundd_etc_t,s0)
-/etc/yiff(/.*)? gen_context(system_u:object_r:soundd_etc_t,s0)
@@ -9496,9 +10218,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/soun
+/var/run/nasd(/.*)? gen_context(system_u:object_r:soundd_var_run_t,s0)
+
/var/state/yiff(/.*)? gen_context(system_u:object_r:soundd_state_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/soundserver.te serefpolicy-3.1.2/policy/modules/services/soundserver.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/soundserver.te serefpolicy-3.2.1/policy/modules/services/soundserver.te
--- nsaserefpolicy/policy/modules/services/soundserver.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/soundserver.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/soundserver.te 2007-11-30 11:23:56.000000000 -0500
@@ -10,9 +10,6 @@
type soundd_exec_t;
init_daemon_domain(soundd_t,soundd_exec_t)
@@ -9559,10 +10281,141 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/soun
seutil_sigchld_newrole(soundd_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/spamassassin.te serefpolicy-3.1.2/policy/modules/services/spamassassin.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/spamassassin.fc serefpolicy-3.2.1/policy/modules/services/spamassassin.fc
+--- nsaserefpolicy/policy/modules/services/spamassassin.fc 2007-10-12 08:56:07.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/services/spamassassin.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,4 +1,4 @@
+-HOME_DIR/\.spamassassin(/.*)? gen_context(system_u:object_r:ROLE_spamassassin_home_t,s0)
++HOME_DIR/\.spamassassin(/.*)? gen_context(system_u:object_r:user_spamassassin_home_t,s0)
+
+ /usr/bin/sa-learn -- gen_context(system_u:object_r:spamc_exec_t,s0)
+ /usr/bin/spamassassin -- gen_context(system_u:object_r:spamassassin_exec_t,s0)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/spamassassin.if serefpolicy-3.2.1/policy/modules/services/spamassassin.if
+--- nsaserefpolicy/policy/modules/services/spamassassin.if 2007-10-12 08:56:07.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/services/spamassassin.if 2007-11-30 11:23:56.000000000 -0500
+@@ -38,6 +38,8 @@
+ gen_require(`
+ type spamc_exec_t, spamassassin_exec_t;
+ type spamd_t, spamd_tmp_t;
++ type user_spamassissin_home_t, user_spamassissin_tmp_t;
++ type user_spamc_tmp_t;
+ ')
+
+ ##############################
+@@ -49,19 +51,15 @@
+ application_domain($1_spamc_t,spamc_exec_t)
+ role $3 types $1_spamc_t;
+
+- type $1_spamc_tmp_t;
+- files_tmp_file($1_spamc_tmp_t)
+-
+ type $1_spamassassin_t;
+ application_domain($1_spamassassin_t,spamassassin_exec_t)
+ role $3 types $1_spamassassin_t;
+
+- type $1_spamassassin_home_t alias $1_spamassassin_rw_t;
+- userdom_user_home_content($1,$1_spamassassin_home_t)
+- files_poly_member($1_spamassassin_home_t)
+-
+- type $1_spamassassin_tmp_t;
+- files_tmp_file($1_spamassassin_tmp_t)
++ ifelse(`$1',`user',`',`
++ typealias user_spamassassin_home_t alias $1_spamassassin_home_t;
++ typealias user_spamassassin_tmp_t alias $1_spamassassin_tmp_t;
++ typealias user_spamc_tmp_t alias $1_spamc_tmp_t;
++ ')
+
+ ##############################
+ #
+@@ -83,9 +81,9 @@
+ allow $1_spamc_t self:tcp_socket create_stream_socket_perms;
+ allow $1_spamc_t self:udp_socket create_socket_perms;
+
+- manage_dirs_pattern($1_spamc_t,$1_spamc_tmp_t,$1_spamc_tmp_t)
+- manage_files_pattern($1_spamc_t,$1_spamc_tmp_t,$1_spamc_tmp_t)
+- files_tmp_filetrans($1_spamc_t, $1_spamc_tmp_t, { file dir })
++ manage_dirs_pattern($1_spamc_t,user_spamc_tmp_t,user_spamc_tmp_t)
++ manage_files_pattern($1_spamc_t,user_spamc_tmp_t,user_spamc_tmp_t)
++ files_tmp_filetrans($1_spamc_t, user_spamc_tmp_t, { file dir })
+
+ # Allow connecting to a local spamd
+ allow $1_spamc_t spamd_t:unix_stream_socket connectto;
+@@ -186,32 +184,32 @@
+ allow $1_spamassassin_t self:msgq create_msgq_perms;
+ allow $1_spamassassin_t self:msg { send receive };
+
+- manage_dirs_pattern($1_spamassassin_t, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- manage_files_pattern($1_spamassassin_t, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- manage_lnk_files_pattern($1_spamassassin_t, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- manage_fifo_files_pattern($1_spamassassin_t, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- manage_sock_files_pattern($1_spamassassin_t, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- userdom_user_home_dir_filetrans($1,$1_spamassassin_t,$1_spamassassin_home_t,{ dir file lnk_file sock_file fifo_file })
+-
+- manage_dirs_pattern($1_spamassassin_t, $1_spamassassin_tmp_t,$1_spamassassin_tmp_t)
+- manage_files_pattern($1_spamassassin_t, $1_spamassassin_tmp_t,$1_spamassassin_tmp_t)
+- files_tmp_filetrans($1_spamassassin_t, $1_spamassassin_tmp_t, { file dir })
+-
+- manage_dirs_pattern($2, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- manage_files_pattern($2, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- manage_lnk_files_pattern($2, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- relabel_dirs_pattern($2, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- relabel_files_pattern($2, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- relabel_lnk_files_pattern($2, $1_spamassassin_home_t,$1_spamassassin_home_t)
++ manage_dirs_pattern($1_spamassassin_t, user_spamassassin_home_t,user_spamassassin_home_t)
++ manage_files_pattern($1_spamassassin_t, user_spamassassin_home_t,user_spamassassin_home_t)
++ manage_lnk_files_pattern($1_spamassassin_t, user_spamassassin_home_t,user_spamassassin_home_t)
++ manage_fifo_files_pattern($1_spamassassin_t, user_spamassassin_home_t,user_spamassassin_home_t)
++ manage_sock_files_pattern($1_spamassassin_t, user_spamassassin_home_t,user_spamassassin_home_t)
++ userdom_user_home_dir_filetrans($1,$1_spamassassin_t,user_spamassassin_home_t,{ dir file lnk_file sock_file fifo_file })
++
++ manage_dirs_pattern($1_spamassassin_t, user_spamassassin_tmp_t,user_spamassassin_tmp_t)
++ manage_files_pattern($1_spamassassin_t, user_spamassassin_tmp_t,user_spamassassin_tmp_t)
++ files_tmp_filetrans($1_spamassassin_t, user_spamassassin_tmp_t, { file dir })
++
++ manage_dirs_pattern($2, user_spamassassin_home_t,user_spamassassin_home_t)
++ manage_files_pattern($2, user_spamassassin_home_t,user_spamassassin_home_t)
++ manage_lnk_files_pattern($2, user_spamassassin_home_t,user_spamassassin_home_t)
++ relabel_dirs_pattern($2, user_spamassassin_home_t,user_spamassassin_home_t)
++ relabel_files_pattern($2, user_spamassassin_home_t,user_spamassassin_home_t)
++ relabel_lnk_files_pattern($2, user_spamassassin_home_t,user_spamassassin_home_t)
+
+ domtrans_pattern($2, spamassassin_exec_t, $1_spamassassin_t)
+
+- manage_dirs_pattern(spamd_t, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- manage_files_pattern(spamd_t, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- manage_lnk_files_pattern(spamd_t, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- manage_fifo_files_pattern(spamd_t, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- manage_sock_files_pattern(spamd_t, $1_spamassassin_home_t,$1_spamassassin_home_t)
+- userdom_user_home_dir_filetrans($1,spamd_t,$1_spamassassin_home_t,{ dir file lnk_file sock_file fifo_file })
++ manage_dirs_pattern(spamd_t, user_spamassassin_home_t,user_spamassassin_home_t)
++ manage_files_pattern(spamd_t, user_spamassassin_home_t,user_spamassassin_home_t)
++ manage_lnk_files_pattern(spamd_t, user_spamassassin_home_t,user_spamassassin_home_t)
++ manage_fifo_files_pattern(spamd_t, user_spamassassin_home_t,user_spamassassin_home_t)
++ manage_sock_files_pattern(spamd_t, user_spamassassin_home_t,user_spamassassin_home_t)
++ userdom_user_home_dir_filetrans($1,spamd_t,user_spamassassin_home_t,{ dir file lnk_file sock_file fifo_file })
+
+ kernel_read_kernel_sysctls($1_spamassassin_t)
+
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/spamassassin.te serefpolicy-3.2.1/policy/modules/services/spamassassin.te
--- nsaserefpolicy/policy/modules/services/spamassassin.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/spamassassin.te 2007-11-26 16:40:13.000000000 -0500
-@@ -81,7 +81,7 @@
++++ serefpolicy-3.2.1/policy/modules/services/spamassassin.te 2007-11-30 11:23:56.000000000 -0500
+@@ -44,6 +44,15 @@
+ type spamassassin_exec_t;
+ application_executable_file(spamassassin_exec_t)
+
++type user_spamassassin_home_t;
++userdom_user_home_content(user,user_spamassassin_home_t)
++
++type user_spamassassin_tmp_t;
++files_tmp_file(user_spamassassin_tmp_t)
++
++type user_spamc_tmp_t;
++files_tmp_file(user_spamc_tmp_t)
++
+ ########################################
+ #
+ # Spamassassin daemon local policy
+@@ -81,7 +90,7 @@
# var/lib files for spamd
allow spamd_t spamd_var_lib_t:dir list_dir_perms;
@@ -9571,7 +10424,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/spam
manage_dirs_pattern(spamd_t, spamd_var_run_t, spamd_var_run_t)
manage_files_pattern(spamd_t, spamd_var_run_t, spamd_var_run_t)
-@@ -150,10 +150,12 @@
+@@ -150,10 +159,12 @@
userdom_dontaudit_search_sysadm_home_dirs(spamd_t)
tunable_policy(`use_nfs_home_dirs',`
@@ -9584,18 +10437,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/spam
fs_manage_cifs_files(spamd_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squid.fc serefpolicy-3.1.2/policy/modules/services/squid.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squid.fc serefpolicy-3.2.1/policy/modules/services/squid.fc
--- nsaserefpolicy/policy/modules/services/squid.fc 2006-11-16 17:15:21.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/squid.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/squid.fc 2007-11-30 11:23:56.000000000 -0500
@@ -12,3 +12,5 @@
/var/run/squid\.pid -- gen_context(system_u:object_r:squid_var_run_t,s0)
/var/spool/squid(/.*)? gen_context(system_u:object_r:squid_cache_t,s0)
+/usr/lib/squid/cachemgr\.cgi -- gen_context(system_u:object_r:httpd_squid_script_exec_t,s0)
+/usr/lib64/squid/cachemgr\.cgi -- gen_context(system_u:object_r:httpd_squid_script_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squid.if serefpolicy-3.1.2/policy/modules/services/squid.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squid.if serefpolicy-3.2.1/policy/modules/services/squid.if
--- nsaserefpolicy/policy/modules/services/squid.if 2007-05-07 10:32:44.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/squid.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/squid.if 2007-11-30 11:23:56.000000000 -0500
@@ -131,3 +131,22 @@
interface(`squid_use',`
refpolicywarn(`$0($*) has been deprecated.')
@@ -9619,9 +10472,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squi
+
+ allow $1 squid_t:unix_stream_socket { getattr read write };
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squid.te serefpolicy-3.1.2/policy/modules/services/squid.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squid.te serefpolicy-3.2.1/policy/modules/services/squid.te
--- nsaserefpolicy/policy/modules/services/squid.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/squid.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/squid.te 2007-11-30 11:23:56.000000000 -0500
@@ -36,7 +36,7 @@
# Local policy
#
@@ -9648,26 +10501,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squi
selinux_dontaudit_getattr_dir(squid_t)
-@@ -127,6 +130,8 @@
- files_dontaudit_getattr_tmp_dirs(squid_t)
- files_getattr_home_dir(squid_t)
-
-+auth_use_nsswitch(squid_t)
-+
- libs_use_ld_so(squid_t)
- libs_use_shared_libs(squid_t)
- # to allow running programs from /usr/lib/squid (IE unlinkd)
-@@ -137,9 +142,6 @@
- miscfiles_read_certs(squid_t)
- miscfiles_read_localization(squid_t)
-
--sysnet_dns_name_resolve(squid_t)
--sysnet_read_config(squid_t)
--
- userdom_use_unpriv_users_fds(squid_t)
- userdom_dontaudit_use_unpriv_user_fds(squid_t)
- userdom_dontaudit_search_sysadm_home_dirs(squid_t)
-@@ -149,19 +151,7 @@
+@@ -149,11 +152,7 @@
')
optional_policy(`
@@ -9676,19 +10510,11 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squi
- cron_use_system_job_fds(squid_t)
- cron_rw_pipes(squid_t)
- cron_write_system_job_pipes(squid_t)
--')
--
--optional_policy(`
-- nis_use_ypbind(squid_t)
--')
--
--optional_policy(`
-- nscd_socket_use(squid_t)
+ cron_system_entry(squid_t,squid_exec_t)
')
optional_policy(`
-@@ -176,7 +166,12 @@
+@@ -176,7 +175,12 @@
udev_read_db(squid_t)
')
@@ -9705,10 +10531,67 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squi
+ corenet_all_recvfrom_unlabeled(httpd_squid_script_t)
+ corenet_all_recvfrom_netlabel(httpd_squid_script_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.if serefpolicy-3.1.2/policy/modules/services/ssh.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.fc serefpolicy-3.2.1/policy/modules/services/ssh.fc
+--- nsaserefpolicy/policy/modules/services/ssh.fc 2007-10-12 08:56:07.000000000 -0400
++++ serefpolicy-3.2.1/policy/modules/services/ssh.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,4 +1,4 @@
+-HOME_DIR/\.ssh(/.*)? gen_context(system_u:object_r:ROLE_home_ssh_t,s0)
++HOME_DIR/\.ssh(/.*)? gen_context(system_u:object_r:user_ssh_home_t,s0)
+
+ /etc/ssh/primes -- gen_context(system_u:object_r:sshd_key_t,s0)
+ /etc/ssh/ssh_host_key -- gen_context(system_u:object_r:sshd_key_t,s0)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.if serefpolicy-3.2.1/policy/modules/services/ssh.if
--- nsaserefpolicy/policy/modules/services/ssh.if 2007-07-23 10:20:13.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/ssh.if 2007-11-26 16:40:13.000000000 -0500
-@@ -202,6 +202,7 @@
++++ serefpolicy-3.2.1/policy/modules/services/ssh.if 2007-11-30 11:23:56.000000000 -0500
+@@ -36,6 +36,7 @@
+ gen_require(`
+ attribute ssh_server;
+ type ssh_exec_t, sshd_key_t, sshd_tmp_t;
++ type user_ssh_home_t, user_ssh_tmp_t;
+ ')
+
+ ##############################
+@@ -47,8 +48,10 @@
+ application_domain($1_ssh_t,ssh_exec_t)
+ role $3 types $1_ssh_t;
+
+- type $1_home_ssh_t;
+- files_type($1_home_ssh_t)
++ ifelse(`$1',`user',`',`
++ typealias user_ssh_home_t alias $1_ssh_home_t;
++ typealias user_ssh_home_t alias $1_home_ssh_t;
++ ')
+
+ ##############################
+ #
+@@ -93,18 +96,18 @@
+ ps_process_pattern($2,$1_ssh_t)
+
+ # user can manage the keys and config
+- manage_files_pattern($2,$1_home_ssh_t,$1_home_ssh_t)
+- manage_lnk_files_pattern($2,$1_home_ssh_t,$1_home_ssh_t)
+- manage_sock_files_pattern($2,$1_home_ssh_t,$1_home_ssh_t)
++ manage_files_pattern($2,user_ssh_home_t,user_ssh_home_t)
++ manage_lnk_files_pattern($2,user_ssh_home_t,user_ssh_home_t)
++ manage_sock_files_pattern($2,user_ssh_home_t,user_ssh_home_t)
+
+ # ssh client can manage the keys and config
+- manage_files_pattern($1_ssh_t,$1_home_ssh_t,$1_home_ssh_t)
+- read_lnk_files_pattern($1_ssh_t,$1_home_ssh_t,$1_home_ssh_t)
++ manage_files_pattern($1_ssh_t,user_ssh_home_t,user_ssh_home_t)
++ read_lnk_files_pattern($1_ssh_t,user_ssh_home_t,user_ssh_home_t)
+
+ # ssh servers can read the user keys and config
+- allow ssh_server $1_home_ssh_t:dir list_dir_perms;
+- read_files_pattern(ssh_server,$1_home_ssh_t,$1_home_ssh_t)
+- read_lnk_files_pattern(ssh_server,$1_home_ssh_t,$1_home_ssh_t)
++ allow ssh_server user_ssh_home_t:dir list_dir_perms;
++ read_files_pattern(ssh_server,user_ssh_home_t,user_ssh_home_t)
++ read_lnk_files_pattern(ssh_server,user_ssh_home_t,user_ssh_home_t)
+
+ kernel_read_kernel_sysctls($1_ssh_t)
+
+@@ -202,6 +205,7 @@
#
template(`ssh_per_role_template',`
gen_require(`
@@ -9716,7 +10599,29 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.
type ssh_agent_exec_t, ssh_keysign_exec_t;
')
-@@ -413,6 +414,25 @@
+@@ -212,7 +216,7 @@
+
+ ssh_basic_client_template($1,$2,$3)
+
+- userdom_user_home_content($1,$1_home_ssh_t)
++ userdom_user_home_content($1,user_ssh_home_t)
+
+ type $1_ssh_agent_t;
+ application_domain($1_ssh_agent_t,ssh_agent_exec_t)
+@@ -240,9 +244,9 @@
+ manage_sock_files_pattern($1_ssh_t,$1_ssh_tmpfs_t,$1_ssh_tmpfs_t)
+ fs_tmpfs_filetrans($1_ssh_t,$1_ssh_tmpfs_t,{ dir file lnk_file sock_file fifo_file })
+
+- manage_dirs_pattern($1_ssh_t,$1_home_ssh_t,$1_home_ssh_t)
+- manage_sock_files_pattern($1_ssh_t,$1_home_ssh_t,$1_home_ssh_t)
+- userdom_user_home_dir_filetrans($1,$1_ssh_t,$1_home_ssh_t,{ dir sock_file })
++ manage_dirs_pattern($1_ssh_t,user_ssh_home_t,user_ssh_home_t)
++ manage_sock_files_pattern($1_ssh_t,user_ssh_home_t,user_ssh_home_t)
++ userdom_user_home_dir_filetrans($1,$1_ssh_t,user_ssh_home_t,{ dir sock_file })
+
+ # Allow the ssh program to communicate with ssh-agent.
+ stream_connect_pattern($1_ssh_t,$1_ssh_agent_tmp_t,$1_ssh_agent_tmp_t,$1_ssh_agent_t)
+@@ -413,6 +417,25 @@
')
')
@@ -9742,7 +10647,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.
#######################################
##
## The template to define a ssh server.
-@@ -443,13 +463,14 @@
+@@ -443,13 +466,14 @@
type $1_var_run_t;
files_pid_file($1_var_run_t)
@@ -9758,7 +10663,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.
allow $1_t $1_devpts_t:chr_file { rw_chr_file_perms setattr getattr relabelfrom };
term_create_pty($1_t,$1_devpts_t)
-@@ -479,6 +500,10 @@
+@@ -479,6 +503,10 @@
corenet_tcp_bind_ssh_port($1_t)
corenet_tcp_connect_all_ports($1_t)
corenet_sendrecv_ssh_server_packets($1_t)
@@ -9769,7 +10674,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.
fs_dontaudit_getattr_all_fs($1_t)
-@@ -506,12 +531,14 @@
+@@ -506,12 +534,14 @@
userdom_dontaudit_relabelfrom_unpriv_users_ptys($1_t)
userdom_search_all_users_home_dirs($1_t)
@@ -9784,7 +10689,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.
')
tunable_policy(`use_samba_home_dirs',`
-@@ -520,6 +547,7 @@
+@@ -520,6 +550,7 @@
optional_policy(`
kerberos_use($1_t)
@@ -9792,14 +10697,14 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.
')
optional_policy(`
-@@ -708,3 +736,4 @@
+@@ -708,3 +739,4 @@
dontaudit $1 sshd_key_t:file { getattr read };
')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.te serefpolicy-3.1.2/policy/modules/services/ssh.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.te serefpolicy-3.2.1/policy/modules/services/ssh.te
--- nsaserefpolicy/policy/modules/services/ssh.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/ssh.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/ssh.te 2007-11-30 11:38:23.000000000 -0500
@@ -24,7 +24,7 @@
# Type for the ssh-agent executable.
@@ -9809,7 +10714,20 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.
# ssh client executable.
type ssh_exec_t;
-@@ -80,6 +80,9 @@
+@@ -57,6 +57,12 @@
+ init_ranged_daemon_domain(sshd_t,sshd_exec_t,s0 - mcs_systemhigh)
+ ')
+
++type user_ssh_home_t;
++userdom_user_home_content(user,user_ssh_home_t)
++
++type user_ssh_tmp_t;
++files_tmp_file(user_ssh_tmp_t)
++
+ #################################
+ #
+ # sshd local policy
+@@ -80,6 +86,9 @@
corenet_tcp_bind_xserver_port(sshd_t)
corenet_sendrecv_xserver_server_packets(sshd_t)
@@ -9819,7 +10737,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.
tunable_policy(`ssh_sysadm_login',`
# Relabel and access ptys created by sshd
# ioctl is necessary for logout() processing for utmp entry and for w to
-@@ -101,6 +104,10 @@
+@@ -101,6 +110,10 @@
')
optional_policy(`
@@ -9830,7 +10748,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.
daemontools_service_domain(sshd_t, sshd_exec_t)
')
-@@ -119,7 +126,11 @@
+@@ -119,7 +132,11 @@
')
optional_policy(`
@@ -9843,20 +10761,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.
unconfined_shell_domtrans(sshd_t)
')
-@@ -229,6 +240,10 @@
- ')
-
- optional_policy(`
-+ rhgb_use_ptys(ssh_keygen_t)
-+')
-+
-+optional_policy(`
- seutil_sigchld_newrole(ssh_keygen_t)
- ')
-
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/stunnel.te serefpolicy-3.1.2/policy/modules/services/stunnel.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/stunnel.te serefpolicy-3.2.1/policy/modules/services/stunnel.te
--- nsaserefpolicy/policy/modules/services/stunnel.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/stunnel.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/stunnel.te 2007-11-30 11:23:56.000000000 -0500
@@ -68,6 +68,8 @@
fs_getattr_all_fs(stunnel_t)
@@ -9881,9 +10788,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/stun
')
# hack since this port has no interfaces since it doesnt
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/telnet.te serefpolicy-3.1.2/policy/modules/services/telnet.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/telnet.te serefpolicy-3.2.1/policy/modules/services/telnet.te
--- nsaserefpolicy/policy/modules/services/telnet.te 2007-07-16 14:09:46.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/telnet.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/telnet.te 2007-11-30 11:23:56.000000000 -0500
@@ -32,12 +32,13 @@
allow telnetd_t self:udp_socket create_socket_perms;
# for identd; cjp: this should probably only be inetd_child rules?
@@ -9950,17 +10857,17 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/teln
-# Allow krb5 telnetd to use fork and open /dev/tty for use
-allow telnetd_t userpty_type:chr_file setattr;
-')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/tftp.fc serefpolicy-3.1.2/policy/modules/services/tftp.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/tftp.fc serefpolicy-3.2.1/policy/modules/services/tftp.fc
--- nsaserefpolicy/policy/modules/services/tftp.fc 2006-11-16 17:15:21.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/tftp.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/tftp.fc 2007-11-30 11:23:56.000000000 -0500
@@ -4,3 +4,4 @@
/tftpboot -d gen_context(system_u:object_r:tftpdir_t,s0)
/tftpboot/.* gen_context(system_u:object_r:tftpdir_t,s0)
+/var/lib/tftp(/.*)? gen_context(system_u:object_r:tftpdir_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/uucp.te serefpolicy-3.1.2/policy/modules/services/uucp.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/uucp.te serefpolicy-3.2.1/policy/modules/services/uucp.te
--- nsaserefpolicy/policy/modules/services/uucp.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/uucp.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/uucp.te 2007-11-30 11:23:56.000000000 -0500
@@ -88,6 +88,8 @@
files_search_home(uucpd_t)
files_search_spool(uucpd_t)
@@ -9991,9 +10898,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/uucp
########################################
#
# UUX Local policy
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/uwimap.te serefpolicy-3.1.2/policy/modules/services/uwimap.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/uwimap.te serefpolicy-3.2.1/policy/modules/services/uwimap.te
--- nsaserefpolicy/policy/modules/services/uwimap.te 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/uwimap.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/uwimap.te 2007-11-30 11:23:56.000000000 -0500
@@ -64,6 +64,7 @@
fs_search_auto_mountpoints(imapd_t)
@@ -10002,20 +10909,20 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/uwim
libs_use_ld_so(imapd_t)
libs_use_shared_libs(imapd_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/w3c.fc serefpolicy-3.1.2/policy/modules/services/w3c.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/w3c.fc serefpolicy-3.2.1/policy/modules/services/w3c.fc
--- nsaserefpolicy/policy/modules/services/w3c.fc 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/w3c.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/w3c.fc 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,2 @@
+/usr/share/w3c-markup-validator(/.*)? gen_context(system_u:object_r:httpd_w3c_validator_content_t,s0)
+/usr/share/w3c-markup-validator/cgi-bin(/.*)? gen_context(system_u:object_r:httpd_w3c_validator_script_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/w3c.if serefpolicy-3.1.2/policy/modules/services/w3c.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/w3c.if serefpolicy-3.2.1/policy/modules/services/w3c.if
--- nsaserefpolicy/policy/modules/services/w3c.if 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/w3c.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/w3c.if 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+## W3C
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/w3c.te serefpolicy-3.1.2/policy/modules/services/w3c.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/w3c.te serefpolicy-3.2.1/policy/modules/services/w3c.te
--- nsaserefpolicy/policy/modules/services/w3c.te 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/w3c.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/w3c.te 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,14 @@
+policy_module(w3c,1.2.1)
+
@@ -10031,19 +10938,30 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/w3c.
+corenet_tcp_sendrecv_http_cache_port(httpd_w3c_validator_script_t)
+
+miscfiles_read_certs(httpd_w3c_validator_script_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xfs.te serefpolicy-3.1.2/policy/modules/services/xfs.te
---- nsaserefpolicy/policy/modules/services/xfs.te 2007-11-20 06:55:20.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/services/xfs.te 2007-11-26 16:40:13.000000000 -0500
-@@ -1,5 +1,5 @@
-
--policy_module(xfs,1.2.3)
-+policy_module(xfs,1.2.2)
-
- ########################################
- #
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xserver.fc serefpolicy-3.1.2/policy/modules/services/xserver.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xserver.fc serefpolicy-3.2.1/policy/modules/services/xserver.fc
--- nsaserefpolicy/policy/modules/services/xserver.fc 2007-10-15 16:11:05.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/xserver.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/xserver.fc 2007-11-30 11:27:15.000000000 -0500
+@@ -1,13 +1,13 @@
+ #
+ # HOME_DIR
+ #
+-HOME_DIR/\.fonts\.conf -- gen_context(system_u:object_r:ROLE_fonts_config_t,s0)
+-HOME_DIR/\.fonts(/.*)? gen_context(system_u:object_r:ROLE_fonts_t,s0)
+-HOME_DIR/\.fonts/auto(/.*)? gen_context(system_u:object_r:ROLE_fonts_cache_t,s0)
+-HOME_DIR/\.fonts\.cache-.* -- gen_context(system_u:object_r:ROLE_fonts_cache_t,s0)
+-HOME_DIR/\.ICEauthority.* -- gen_context(system_u:object_r:ROLE_iceauth_home_t,s0)
+-HOME_DIR/\.xauth.* -- gen_context(system_u:object_r:ROLE_xauth_home_t,s0)
+-HOME_DIR/\.Xauthority.* -- gen_context(system_u:object_r:ROLE_xauth_home_t,s0)
++HOME_DIR/\.fonts\.conf -- gen_context(system_u:object_r:user_fonts_config_t,s0)
++HOME_DIR/\.fonts(/.*)? gen_context(system_u:object_r:user_fonts_t,s0)
++HOME_DIR/\.fonts/auto(/.*)? gen_context(system_u:object_r:user_fonts_cache_t,s0)
++HOME_DIR/\.fonts\.cache-.* -- gen_context(system_u:object_r:user_fonts_cache_t,s0)
++HOME_DIR/\.ICEauthority.* -- gen_context(system_u:object_r:user_iceauth_home_t,s0)
++HOME_DIR/\.xauth.* -- gen_context(system_u:object_r:user_xauth_home_t,s0)
++HOME_DIR/\.Xauthority.* -- gen_context(system_u:object_r:user_xauth_home_t,s0)
+
+ #
+ # /dev
@@ -32,11 +32,6 @@
/etc/X11/wdm/Xstartup.* -- gen_context(system_u:object_r:xsession_exec_t,s0)
/etc/X11/Xsession[^/]* -- gen_context(system_u:object_r:xsession_exec_t,s0)
@@ -10065,9 +10983,12 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
/usr/bin/gpe-dm -- gen_context(system_u:object_r:xdm_exec_t,s0)
/usr/bin/iceauth -- gen_context(system_u:object_r:iceauth_exec_t,s0)
/usr/bin/Xair -- gen_context(system_u:object_r:xserver_exec_t,s0)
-@@ -91,14 +86,19 @@
+@@ -89,16 +84,21 @@
- /var/lib/[xkw]dm(/.*)? gen_context(system_u:object_r:xdm_var_lib_t,s0)
+ /var/[xgk]dm(/.*)? gen_context(system_u:object_r:xserver_log_t,s0)
+
+-/var/lib/[xkw]dm(/.*)? gen_context(system_u:object_r:xdm_var_lib_t,s0)
++/var/lib/[gxkw]dm(/.*)? gen_context(system_u:object_r:xdm_var_lib_t,s0)
/var/lib/xkb(/.*)? gen_context(system_u:object_r:xkb_var_lib_t,s0)
+/var/lib/xorg(/.*)? gen_context(system_u:object_r:xserver_var_lib_t,s0)
@@ -10086,9 +11007,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
ifdef(`distro_suse',`
/var/lib/pam_devperm/:0 -- gen_context(system_u:object_r:xdm_var_lib_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xserver.if serefpolicy-3.1.2/policy/modules/services/xserver.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xserver.if serefpolicy-3.2.1/policy/modules/services/xserver.if
--- nsaserefpolicy/policy/modules/services/xserver.if 2007-10-12 08:56:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/xserver.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/xserver.if 2007-11-30 11:23:56.000000000 -0500
@@ -58,7 +58,6 @@
allow $1_xserver_t self:msg { send receive };
allow $1_xserver_t self:unix_dgram_socket { create_socket_perms sendto };
@@ -10162,20 +11083,60 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
rhgb_getpgid($1_xserver_t)
rhgb_signal($1_xserver_t)
')
-@@ -251,7 +249,7 @@
- userdom_user_home_content($1,$1_fonts_cache_t)
+@@ -241,39 +239,26 @@
+ # Declarations
+ #
- type $1_fonts_config_t, fonts_config_type;
++ ifelse(`$1',`user',`',`
++ typealias user_iceauth_home_t alias $1_iceauth_home_t;
++ typealias user_fonts_t alias $1_fonts_t;
++ typealias user_fonts_config_t alias $1_fonts_config_t;
++ typealias user_fonts_cache_t alias $1_fonts_cache_t;
++ ')
++
+ xserver_common_domain_template($1)
+ role $3 types $1_xserver_t;
+
+- type $1_fonts_t, fonts_type;
+- userdom_user_home_content($1,$1_fonts_t)
+-
+- type $1_fonts_cache_t, fonts_cache_type;
- userdom_user_home_content($1,$1_fonts_cache_t)
-+ userdom_user_home_content($1,$1_fonts_config_t)
-
+-
+- type $1_fonts_config_t, fonts_config_type;
+- userdom_user_home_content($1,$1_fonts_cache_t)
+-
type $1_iceauth_t;
domain_type($1_iceauth_t)
-@@ -282,11 +280,14 @@
+ domain_entry_file($1_iceauth_t,iceauth_exec_t)
+ role $3 types $1_iceauth_t;
+
+- type $1_iceauth_home_t alias $1_iceauth_rw_t;
+- files_poly_member($1_iceauth_home_t)
+- userdom_user_home_content($1,$1_iceauth_home_t)
+-
+ type $1_xauth_t;
+ domain_type($1_xauth_t)
+ domain_entry_file($1_xauth_t,xauth_exec_t)
+ role $3 types $1_xauth_t;
+
+- type $1_xauth_home_t alias $1_xauth_rw_t, xauth_home_type;
+- files_poly_member($1_xauth_home_t)
+- userdom_user_home_content($1,$1_xauth_home_t)
+-
+- type $1_xauth_tmp_t;
+- files_tmp_file($1_xauth_tmp_t)
+-
+ ##############################
+ #
+ # $1_xserver_t Local policy
+@@ -281,12 +266,15 @@
+
domtrans_pattern($1_xserver_t, xauth_exec_t, $1_xauth_t)
- allow $1_xserver_t $1_xauth_home_t:file { getattr read };
-+ allow xdm_t $1_xauth_home_t:file append_file_perms;
+- allow $1_xserver_t $1_xauth_home_t:file { getattr read };
++ allow $1_xserver_t user_xauth_home_t:file { getattr read };
++ allow xdm_t user_xauth_home_t:file append_file_perms;
domtrans_pattern($2, xserver_exec_t, $1_xserver_t)
allow $1_xserver_t $2:process signal;
@@ -10186,7 +11147,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
manage_dirs_pattern($2,$1_fonts_t,$1_fonts_t)
manage_files_pattern($2,$1_fonts_t,$1_fonts_t)
-@@ -316,6 +317,7 @@
+@@ -316,6 +304,7 @@
userdom_use_user_ttys($1,$1_xserver_t)
userdom_setattr_user_ttys($1,$1_xserver_t)
userdom_rw_user_tmpfs_files($1,$1_xserver_t)
@@ -10194,7 +11155,25 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
xserver_use_user_fonts($1,$1_xserver_t)
xserver_rw_xdm_tmp_files($1_xauth_t)
-@@ -353,12 +355,6 @@
+@@ -339,12 +328,12 @@
+ allow $1_xauth_t self:process signal;
+ allow $1_xauth_t self:unix_stream_socket create_stream_socket_perms;
+
+- allow $1_xauth_t $1_xauth_home_t:file manage_file_perms;
+- userdom_user_home_dir_filetrans($1,$1_xauth_t,$1_xauth_home_t,file)
++ allow $1_xauth_t user_xauth_home_t:file manage_file_perms;
++ userdom_user_home_dir_filetrans($1,$1_xauth_t,user_xauth_home_t,file)
+
+- manage_dirs_pattern($1_xauth_t,$1_xauth_tmp_t,$1_xauth_tmp_t)
+- manage_files_pattern($1_xauth_t,$1_xauth_tmp_t,$1_xauth_tmp_t)
+- files_tmp_filetrans($1_xauth_t, $1_xauth_tmp_t, { file dir })
++ manage_dirs_pattern($1_xauth_t,user_xauth_tmp_t,user_xauth_tmp_t)
++ manage_files_pattern($1_xauth_t,user_xauth_tmp_t,user_xauth_tmp_t)
++ files_tmp_filetrans($1_xauth_t, user_xauth_tmp_t, { file dir })
+
+ domtrans_pattern($2, xauth_exec_t, $1_xauth_t)
+
+@@ -353,12 +342,6 @@
# allow ps to show xauth
ps_process_pattern($2,$1_xauth_t)
@@ -10207,7 +11186,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
domain_use_interactive_fds($1_xauth_t)
files_read_etc_files($1_xauth_t)
-@@ -387,6 +383,14 @@
+@@ -387,6 +370,14 @@
')
optional_policy(`
@@ -10222,7 +11201,29 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
nis_use_ypbind($1_xauth_t)
')
-@@ -536,17 +540,15 @@
+@@ -403,16 +394,16 @@
+
+ domtrans_pattern($2, iceauth_exec_t, $1_iceauth_t)
+
+- allow $1_iceauth_t $1_iceauth_home_t:file manage_file_perms;
+- userdom_user_home_dir_filetrans($1,$1_iceauth_t,$1_iceauth_home_t,file)
++ allow $1_iceauth_t user_iceauth_home_t:file manage_file_perms;
++ userdom_user_home_dir_filetrans($1,$1_iceauth_t,user_iceauth_home_t,file)
+
+ # allow ps to show iceauth
+ ps_process_pattern($2,$1_iceauth_t)
+
+- allow $2 $1_iceauth_home_t:file manage_file_perms;
+- allow $2 $1_iceauth_home_t:file { relabelfrom relabelto };
++ allow $2 user_iceauth_home_t:file manage_file_perms;
++ allow $2 user_iceauth_home_t:file { relabelfrom relabelto };
+
+- allow xdm_t $1_iceauth_home_t:file read_file_perms;
++ allow xdm_t user_iceauth_home_t:file read_file_perms;
+
+ fs_search_auto_mountpoints($1_iceauth_t)
+
+@@ -536,17 +527,15 @@
template(`xserver_user_client_template',`
gen_require(`
@@ -10242,11 +11243,11 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
- allow $2 $1_xauth_home_t:file { getattr read };
- allow $2 $1_iceauth_home_t:file { getattr read };
+ # this should cause the .xsession-errors file to be written to /tmp
-+ dontaudit xdm_t $1_home_t:file rw_file_perms;
++ userdom_dontaudit_write_unpriv_user_home_content_files(xdm_t)
# for when /tmp/.X11-unix is created by the system
allow $2 xdm_t:fd use;
-@@ -555,25 +557,51 @@
+@@ -555,25 +544,51 @@
allow $2 xdm_tmp_t:sock_file { read write };
dontaudit $2 xdm_t:tcp_socket { read write };
@@ -10306,7 +11307,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
')
')
-@@ -626,6 +654,24 @@
+@@ -626,6 +641,24 @@
########################################
##
@@ -10331,7 +11332,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
## Transition to a user Xauthority domain.
##
##
-@@ -659,6 +705,73 @@
+@@ -659,6 +692,73 @@
########################################
##
@@ -10360,10 +11361,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
+#
+template(`xserver_read_user_xauth',`
+ gen_require(`
-+ type $1_xauth_home_t;
++ type user_xauth_home_t;
+ ')
+
-+ allow $2 $1_xauth_home_t:file { getattr read };
++ allow $2 user_xauth_home_t:file { getattr read };
+')
+
+########################################
@@ -10393,11 +11394,11 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
+#
+template(`xserver_read_user_iceauth',`
+ gen_require(`
-+ type $1_iceauth_home_t;
++ type user_iceauth_home_t;
+ ')
+
+ # Read .Iceauthority file
-+ allow $2 $1_iceauth_home_t:file { getattr read };
++ allow $2 user_iceauth_home_t:file { getattr read };
+')
+
+########################################
@@ -10405,7 +11406,20 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
## Transition to a user Xauthority domain.
##
##
-@@ -873,6 +986,25 @@
+@@ -684,10 +784,10 @@
+ #
+ template(`xserver_user_home_dir_filetrans_user_xauth',`
+ gen_require(`
+- type $1_xauth_home_t;
++ type user_xauth_home_t;
+ ')
+
+- userdom_user_home_dir_filetrans($1, $2, $1_xauth_home_t, file)
++ userdom_user_home_dir_filetrans($1, $2, user_xauth_home_t, file)
+ ')
+
+ ########################################
+@@ -873,6 +973,25 @@
########################################
##
@@ -10431,7 +11445,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
## Read xdm-writable configuration files.
##
##
-@@ -927,6 +1059,7 @@
+@@ -927,6 +1046,7 @@
files_search_tmp($1)
allow $1 xdm_tmp_t:dir list_dir_perms;
create_sock_files_pattern($1,xdm_tmp_t,xdm_tmp_t)
@@ -10439,7 +11453,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
')
########################################
-@@ -987,6 +1120,37 @@
+@@ -987,6 +1107,37 @@
########################################
##
@@ -10477,7 +11491,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
## Make an X session script an entrypoint for the specified domain.
##
##
-@@ -1136,7 +1300,7 @@
+@@ -1136,7 +1287,7 @@
type xdm_xserver_tmp_t;
')
@@ -10486,7 +11500,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
')
########################################
-@@ -1325,3 +1489,45 @@
+@@ -1325,3 +1476,45 @@
files_search_tmp($1)
stream_connect_pattern($1,xdm_xserver_tmp_t,xdm_xserver_tmp_t,xdm_xserver_t)
')
@@ -10532,9 +11546,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
+
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xserver.te serefpolicy-3.1.2/policy/modules/services/xserver.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xserver.te serefpolicy-3.2.1/policy/modules/services/xserver.te
--- nsaserefpolicy/policy/modules/services/xserver.te 2007-10-15 16:11:05.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/services/xserver.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/services/xserver.te 2007-11-30 13:33:41.000000000 -0500
@@ -16,6 +16,13 @@
##
@@ -10562,7 +11576,34 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
type xdm_tmp_t;
files_tmp_file(xdm_tmp_t)
typealias xdm_tmp_t alias ice_tmp_t;
-@@ -96,7 +109,7 @@
+@@ -78,6 +91,26 @@
+ type xserver_log_t;
+ logging_log_file(xserver_log_t)
+
++type user_fonts_t, fonts_type;
++userdom_user_home_content(user,user_fonts_t)
++
++type user_fonts_cache_t, fonts_cache_type;
++userdom_user_home_content(user,user_fonts_cache_t)
++
++type user_fonts_config_t, fonts_config_type;
++userdom_user_home_content(user,user_fonts_config_t)
++
++type user_iceauth_home_t;
++files_poly_member(user_iceauth_home_t)
++userdom_user_home_content(user,user_iceauth_home_t)
++
++type user_xauth_home_t alias user_xauth_rw_t, xauth_home_type;
++files_poly_member(user_xauth_home_t)
++userdom_user_home_content(user,user_xauth_home_t)
++
++type user_xauth_tmp_t;
++files_tmp_file(user_xauth_tmp_t)
++
+ xserver_common_domain_template(xdm)
+ init_system_domain(xdm_xserver_t,xserver_exec_t)
+
+@@ -96,12 +129,11 @@
#
allow xdm_t self:capability { setgid setuid sys_resource kill sys_tty_config mknod chown dac_override dac_read_search fowner fsetid ipc_owner sys_nice sys_rawio net_bind_service };
@@ -10571,7 +11612,12 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
allow xdm_t self:fifo_file rw_fifo_file_perms;
allow xdm_t self:shm create_shm_perms;
allow xdm_t self:sem create_sem_perms;
-@@ -110,6 +123,8 @@
+ allow xdm_t self:unix_stream_socket { connectto create_stream_socket_perms };
+-allow xdm_t self:netlink_route_socket r_netlink_socket_perms;
+ allow xdm_t self:unix_dgram_socket create_socket_perms;
+ allow xdm_t self:tcp_socket create_stream_socket_perms;
+ allow xdm_t self:udp_socket create_socket_perms;
+@@ -110,6 +142,8 @@
allow xdm_t self:key { search link write };
allow xdm_t xconsole_device_t:fifo_file { getattr setattr };
@@ -10580,7 +11626,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
# Allow gdm to run gdm-binary
can_exec(xdm_t, xdm_exec_t)
-@@ -132,15 +147,20 @@
+@@ -132,15 +166,20 @@
manage_fifo_files_pattern(xdm_t,xdm_tmpfs_t,xdm_tmpfs_t)
manage_sock_files_pattern(xdm_t,xdm_tmpfs_t,xdm_tmpfs_t)
fs_tmpfs_filetrans(xdm_t,xdm_tmpfs_t,{ dir file lnk_file sock_file fifo_file })
@@ -10602,7 +11648,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
allow xdm_t xdm_xserver_t:process signal;
allow xdm_t xdm_xserver_t:unix_stream_socket connectto;
-@@ -185,6 +205,7 @@
+@@ -185,6 +224,7 @@
corenet_udp_sendrecv_all_ports(xdm_t)
corenet_tcp_bind_all_nodes(xdm_t)
corenet_udp_bind_all_nodes(xdm_t)
@@ -10610,7 +11656,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
corenet_tcp_connect_all_ports(xdm_t)
corenet_sendrecv_all_client_packets(xdm_t)
# xdm tries to bind to biff_port_t
-@@ -197,6 +218,7 @@
+@@ -197,6 +237,7 @@
dev_getattr_mouse_dev(xdm_t)
dev_setattr_mouse_dev(xdm_t)
dev_rw_apm_bios(xdm_t)
@@ -10618,7 +11664,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
dev_setattr_apm_bios_dev(xdm_t)
dev_rw_dri(xdm_t)
dev_rw_agp(xdm_t)
-@@ -209,8 +231,8 @@
+@@ -209,8 +250,8 @@
dev_setattr_video_dev(xdm_t)
dev_getattr_scanner_dev(xdm_t)
dev_setattr_scanner_dev(xdm_t)
@@ -10629,7 +11675,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
dev_getattr_power_mgmt_dev(xdm_t)
dev_setattr_power_mgmt_dev(xdm_t)
-@@ -246,6 +268,7 @@
+@@ -246,6 +287,7 @@
auth_domtrans_pam_console(xdm_t)
auth_manage_pam_pid(xdm_t)
auth_manage_pam_console_data(xdm_t)
@@ -10637,7 +11683,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
auth_rw_faillog(xdm_t)
auth_write_login_records(xdm_t)
-@@ -257,6 +280,7 @@
+@@ -257,12 +299,11 @@
libs_exec_lib_files(xdm_t)
logging_read_generic_logs(xdm_t)
@@ -10645,7 +11691,13 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
miscfiles_read_localization(xdm_t)
miscfiles_read_fonts(xdm_t)
-@@ -271,6 +295,10 @@
+
+-sysnet_read_config(xdm_t)
+-
+ userdom_dontaudit_use_unpriv_user_fds(xdm_t)
+ userdom_dontaudit_search_sysadm_home_dirs(xdm_t)
+ userdom_create_all_users_keys(xdm_t)
+@@ -271,6 +312,10 @@
# Search /proc for any user domain processes.
userdom_read_all_users_state(xdm_t)
userdom_signal_all_users(xdm_t)
@@ -10656,18 +11708,41 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
xserver_rw_session_template(xdm,xdm_t,xdm_tmpfs_t)
-@@ -306,6 +334,10 @@
+@@ -306,6 +351,11 @@
optional_policy(`
consolekit_dbus_chat(xdm_t)
+ dbus_system_bus_client_template(xdm, xdm_t)
++ dbus_per_role_template(xdm, xdm_t, system_r)
+ optional_policy(`
+ hal_dbus_chat(xdm_t)
+ ')
')
optional_policy(`
-@@ -348,8 +380,8 @@
+@@ -323,6 +373,10 @@
+ ')
+
+ optional_policy(`
++ gnome_exec_gconf(xdm_t)
++')
++
++optional_policy(`
+ loadkeys_exec(xdm_t)
+ ')
+
+@@ -336,10 +390,6 @@
+ ')
+
+ optional_policy(`
+- nscd_socket_use(xdm_t)
+-')
+-
+-optional_policy(`
+ seutil_sigchld_newrole(xdm_t)
+ ')
+
+@@ -348,8 +398,8 @@
')
optional_policy(`
@@ -10677,7 +11752,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
ifndef(`distro_redhat',`
allow xdm_t self:process { execheap execmem };
-@@ -385,7 +417,7 @@
+@@ -385,7 +435,7 @@
allow xdm_xserver_t xdm_var_lib_t:file { getattr read };
dontaudit xdm_xserver_t xdm_var_lib_t:dir search;
@@ -10686,7 +11761,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
# Label pid and temporary files with derived types.
manage_files_pattern(xdm_xserver_t,xdm_tmp_t,xdm_tmp_t)
-@@ -397,6 +429,15 @@
+@@ -397,6 +447,15 @@
can_exec(xdm_xserver_t, xkb_var_lib_t)
files_search_var_lib(xdm_xserver_t)
@@ -10702,7 +11777,15 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
# VNC v4 module in X server
corenet_tcp_bind_vnc_port(xdm_xserver_t)
-@@ -425,6 +466,14 @@
+@@ -409,6 +468,7 @@
+ # to read ROLE_home_t - examine this in more detail
+ # (xauth?)
+ userdom_read_unpriv_users_home_content_files(xdm_xserver_t)
++userdom_manage_unpriv_users_tmp_files(xdm_xserver_t)
+
+ xserver_use_all_users_fonts(xdm_xserver_t)
+
+@@ -425,6 +485,14 @@
')
optional_policy(`
@@ -10717,7 +11800,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
resmgr_stream_connect(xdm_t)
')
-@@ -434,47 +483,31 @@
+@@ -434,47 +502,30 @@
')
optional_policy(`
@@ -10734,7 +11817,6 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
+ unconfined_rw_shm(xdm_xserver_t)
+ unconfined_execmem_rw_shm(xdm_xserver_t)
+ unconfined_rw_tmpfs_files(xdm_xserver_t)
-+ unconfined_manage_tmp_files(xdm_xserver_t)
- ifdef(`distro_rhel4',`
- allow xdm_xserver_t self:process { execheap execmem };
@@ -10787,18 +11869,19 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser
-#
-allow pam_t xdm_t:fifo_file { getattr ioctl write };
-') dnl end TODO
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlogin.fc serefpolicy-3.1.2/policy/modules/system/authlogin.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlogin.fc serefpolicy-3.2.1/policy/modules/system/authlogin.fc
--- nsaserefpolicy/policy/modules/system/authlogin.fc 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/authlogin.fc 2007-11-26 16:40:13.000000000 -0500
-@@ -41,3 +41,5 @@
++++ serefpolicy-3.2.1/policy/modules/system/authlogin.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -41,3 +41,6 @@
/var/run/console(/.*)? gen_context(system_u:object_r:pam_var_console_t,s0)
/var/run/sudo(/.*)? gen_context(system_u:object_r:pam_var_run_t,s0)
++/var/lib/pam_ssh(/.*)? gen_context(system_u:object_r:var_auth_t,s0)
+
+/var/cache/coolkey(/.*)? gen_context(system_u:object_r:auth_cache_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlogin.if serefpolicy-3.1.2/policy/modules/system/authlogin.if
---- nsaserefpolicy/policy/modules/system/authlogin.if 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/authlogin.if 2007-11-26 16:40:34.000000000 -0500
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlogin.if serefpolicy-3.2.1/policy/modules/system/authlogin.if
+--- nsaserefpolicy/policy/modules/system/authlogin.if 2007-11-29 13:29:35.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/authlogin.if 2007-11-30 11:23:56.000000000 -0500
@@ -169,6 +169,7 @@
interface(`auth_login_pgm_domain',`
gen_require(`
@@ -10870,6 +11953,21 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlo
')
optional_policy(`
+@@ -369,12 +400,12 @@
+ ##
+ ##
+ ##
+-## The role to allow the chkpwd domain.
++## The role to allow the updpwd domain.
+ ##
+ ##
+ ##
+ ##
+-## The type of the terminal allow the chkpwd domain to use.
++## The type of the terminal allow the updpwd domain to use.
+ ##
+ ##
+ #
@@ -440,6 +471,59 @@
########################################
@@ -10962,9 +12060,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlo
+ read_files_pattern($1, auth_cache_t, auth_cache_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlogin.te serefpolicy-3.1.2/policy/modules/system/authlogin.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlogin.te serefpolicy-3.2.1/policy/modules/system/authlogin.te
--- nsaserefpolicy/policy/modules/system/authlogin.te 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/authlogin.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/authlogin.te 2007-11-30 11:33:09.000000000 -0500
@@ -59,6 +59,9 @@
type utempter_exec_t;
application_domain(utempter_t,utempter_exec_t)
@@ -10993,20 +12091,33 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlo
optional_policy(`
locallogin_use_fds(pam_t)
-@@ -287,8 +294,8 @@
+@@ -287,8 +294,10 @@
files_manage_etc_files(updpwd_t)
term_dontaudit_use_console(updpwd_t)
-term_dontaudit_use_console(updpwd_t)
--term_dontaudit_use_unallocated_ttys(updpwd_t)
+term_dontaudit_use_all_user_ptys(updpwd_t)
+term_dontaudit_use_all_user_ttys(updpwd_t)
+ term_dontaudit_use_unallocated_ttys(updpwd_t)
++term_dontaudit_use_generic_ptys(updpwd_t)
auth_manage_shadow(updpwd_t)
auth_use_nsswitch(updpwd_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fstools.fc serefpolicy-3.1.2/policy/modules/system/fstools.fc
+@@ -337,11 +346,6 @@
+ ')
+
+ optional_policy(`
+- # Allow utemper to write to /tmp/.xses-*
+- unconfined_write_tmp_files(utempter_t)
+-')
+-
+-optional_policy(`
+ xserver_use_xdm_fds(utempter_t)
+ xserver_rw_xdm_pipes(utempter_t)
+ ')
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fstools.fc serefpolicy-3.2.1/policy/modules/system/fstools.fc
--- nsaserefpolicy/policy/modules/system/fstools.fc 2007-09-26 12:15:01.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/fstools.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/fstools.fc 2007-11-30 11:23:56.000000000 -0500
@@ -1,4 +1,3 @@
-/sbin/badblocks -- gen_context(system_u:object_r:fsadm_exec_t,s0)
/sbin/blkid -- gen_context(system_u:object_r:fsadm_exec_t,s0)
@@ -11020,9 +12131,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fstool
/sbin/parted -- gen_context(system_u:object_r:fsadm_exec_t,s0)
/sbin/partprobe -- gen_context(system_u:object_r:fsadm_exec_t,s0)
/sbin/partx -- gen_context(system_u:object_r:fsadm_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fstools.if serefpolicy-3.1.2/policy/modules/system/fstools.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fstools.if serefpolicy-3.2.1/policy/modules/system/fstools.if
--- nsaserefpolicy/policy/modules/system/fstools.if 2007-08-22 17:33:53.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/fstools.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/fstools.if 2007-11-30 11:23:56.000000000 -0500
@@ -142,3 +142,20 @@
allow $1 swapfile_t:file getattr;
@@ -11044,9 +12155,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fstool
+ ')
+ fs_manage_nfs_files(fsadm_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fstools.te serefpolicy-3.1.2/policy/modules/system/fstools.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fstools.te serefpolicy-3.2.1/policy/modules/system/fstools.te
--- nsaserefpolicy/policy/modules/system/fstools.te 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/fstools.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/fstools.te 2007-11-30 11:23:56.000000000 -0500
@@ -109,8 +109,7 @@
term_use_console(fsadm_t)
@@ -11063,111 +12174,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fstool
xen_append_log(fsadm_t)
+ xen_rw_image_files(fsadm_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fusermount.fc serefpolicy-3.1.2/policy/modules/system/fusermount.fc
---- nsaserefpolicy/policy/modules/system/fusermount.fc 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/fusermount.fc 2007-11-26 16:40:13.000000000 -0500
-@@ -0,0 +1,3 @@
-+
-+/usr/bin/fusermount -- gen_context(system_u:object_r:fusermount_exec_t,s0)
-+/bin/fusermount -- gen_context(system_u:object_r:fusermount_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fusermount.if serefpolicy-3.1.2/policy/modules/system/fusermount.if
---- nsaserefpolicy/policy/modules/system/fusermount.if 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/fusermount.if 2007-11-26 16:40:13.000000000 -0500
-@@ -0,0 +1,41 @@
-+## policy for fusermount
-+
-+########################################
-+##
-+## Execute a domain transition to run fusermount.
-+##
-+##
-+##
-+## Domain allowed to transition.
-+##
-+##
-+#
-+interface(`fusermount_domtrans',`
-+ gen_require(`
-+ type fusermount_t, fusermount_exec_t;
-+ ')
-+
-+ domain_auto_trans($1,fusermount_exec_t,fusermount_t)
-+
-+ allow fusermount_t $1:fd use;
-+ allow fusermount_t $1:fifo_file rw_file_perms;
-+ allow fusermount_t $1:process sigchld;
-+')
-+
-+########################################
-+##
-+## Inherit and use file descriptors from fusermount.
-+##
-+##
-+##
-+## Domain allowed access.
-+##
-+##
-+#
-+interface(`fusermount_use_fds',`
-+ gen_require(`
-+ type fusermount_t;
-+ ')
-+
-+ allow $1 fusermount_t:fd use;
-+')
-\ No newline at end of file
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/fusermount.te serefpolicy-3.1.2/policy/modules/system/fusermount.te
---- nsaserefpolicy/policy/modules/system/fusermount.te 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/fusermount.te 2007-11-26 16:40:13.000000000 -0500
-@@ -0,0 +1,45 @@
-+policy_module(fusermount,1.0.0)
-+
-+########################################
-+#
-+# Declarations
-+#
-+
-+type fusermount_t;
-+type fusermount_exec_t;
-+application_domain(fusermount_t, fusermount_exec_t)
-+role system_r types fusermount_t;
-+
-+########################################
-+#
-+# fusermount local policy
-+#
-+allow fusermount_t self:capability sys_admin;
-+allow fusermount_t self:fifo_file { read write };
-+allow fusermount_t self:unix_stream_socket create_stream_socket_perms;
-+
-+files_read_etc_files(fusermount_t)
-+
-+libs_use_ld_so(fusermount_t)
-+libs_use_shared_libs(fusermount_t)
-+
-+miscfiles_read_localization(fusermount_t)
-+
-+files_manage_etc_runtime_files(fusermount_t)
-+files_etc_filetrans_etc_runtime(fusermount_t,file)
-+files_mounton_all_mountpoints(fusermount_t)
-+
-+fs_mount_fusefs(fusermount_t)
-+
-+storage_raw_read_fixed_disk(fusermount_t)
-+storage_raw_write_fixed_disk(fusermount_t)
-+storage_rw_fuse(fusermount_t)
-+
-+optional_policy(`
-+ hal_write_log(fusermount_t)
-+ hal_use_fds(fusermount_t)
-+ hal_rw_pipes(fusermount_t)
-+')
-+
-+
-+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/getty.te serefpolicy-3.1.2/policy/modules/system/getty.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/getty.te serefpolicy-3.2.1/policy/modules/system/getty.te
--- nsaserefpolicy/policy/modules/system/getty.te 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/getty.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/getty.te 2007-11-30 11:23:56.000000000 -0500
@@ -33,7 +33,8 @@
#
@@ -11178,9 +12187,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/getty.
dontaudit getty_t self:capability sys_tty_config;
allow getty_t self:process { getpgid setpgid getsession signal_perms };
allow getty_t self:fifo_file rw_fifo_file_perms;
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/hostname.te serefpolicy-3.1.2/policy/modules/system/hostname.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/hostname.te serefpolicy-3.2.1/policy/modules/system/hostname.te
--- nsaserefpolicy/policy/modules/system/hostname.te 2007-01-02 12:57:49.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/hostname.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/hostname.te 2007-11-30 11:23:56.000000000 -0500
@@ -8,7 +8,9 @@
type hostname_t;
@@ -11204,9 +12213,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/hostna
+optional_policy(`
+ unconfined_dontaudit_rw_pipes(hostname_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/hotplug.te serefpolicy-3.1.2/policy/modules/system/hotplug.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/hotplug.te serefpolicy-3.2.1/policy/modules/system/hotplug.te
--- nsaserefpolicy/policy/modules/system/hotplug.te 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/hotplug.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/hotplug.te 2007-11-30 11:23:56.000000000 -0500
@@ -179,6 +179,7 @@
sysnet_read_dhcpc_pid(hotplug_t)
sysnet_rw_dhcp_config(hotplug_t)
@@ -11215,9 +12224,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/hotplu
')
optional_policy(`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.if serefpolicy-3.1.2/policy/modules/system/init.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.if serefpolicy-3.2.1/policy/modules/system/init.if
--- nsaserefpolicy/policy/modules/system/init.if 2007-10-29 18:02:31.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/init.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/init.if 2007-11-30 11:23:56.000000000 -0500
@@ -211,6 +211,13 @@
kernel_dontaudit_use_fds($1)
')
@@ -11459,9 +12468,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.i
+ domain_entry_file(initrc_t,$1)
+
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.te serefpolicy-3.1.2/policy/modules/system/init.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.te serefpolicy-3.2.1/policy/modules/system/init.te
--- nsaserefpolicy/policy/modules/system/init.te 2007-10-29 07:52:50.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/init.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/init.te 2007-11-30 15:05:52.000000000 -0500
@@ -10,6 +10,20 @@
# Declarations
#
@@ -11574,15 +12583,14 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.t
userdom_read_all_users_home_content_files(initrc_t)
# Allow access to the sysadm TTYs. Note that this will give access to the
-@@ -497,6 +510,33 @@
+@@ -496,6 +509,31 @@
+ ')
')
- optional_policy(`
-+ rhgb_use_ptys(daemon)
-+')
-+
+domain_dontaudit_use_interactive_fds(daemon)
+
++userdom_dontaudit_search_sysadm_home_dirs(daemon)
++
+tunable_policy(`allow_daemons_use_tty',`
+ term_use_unallocated_ttys(daemon)
+ term_use_generic_ptys(daemon)
@@ -11604,11 +12612,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.t
+ unconfined_dontaudit_rw_pipes(daemon)
+')
+
-+optional_policy(`
+ optional_policy(`
amavis_search_lib(initrc_t)
amavis_setattr_pid_files(initrc_t)
- ')
-@@ -631,12 +671,6 @@
+@@ -631,12 +669,6 @@
mta_read_config(initrc_t)
mta_dontaudit_read_spool_symlinks(initrc_t)
')
@@ -11621,7 +12628,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.t
optional_policy(`
ifdef(`distro_redhat',`
-@@ -648,15 +682,10 @@
+@@ -648,15 +680,10 @@
')
optional_policy(`
@@ -11637,7 +12644,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.t
openvpn_read_config(initrc_t)
')
-@@ -702,6 +731,9 @@
+@@ -702,6 +729,9 @@
# why is this needed:
rpm_manage_db(initrc_t)
@@ -11647,7 +12654,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.t
')
optional_policy(`
-@@ -749,6 +781,10 @@
+@@ -749,6 +779,10 @@
')
optional_policy(`
@@ -11658,9 +12665,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.t
vmware_read_system_config(initrc_t)
vmware_append_system_config(initrc_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/libraries.fc serefpolicy-3.1.2/policy/modules/system/libraries.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/libraries.fc serefpolicy-3.2.1/policy/modules/system/libraries.fc
--- nsaserefpolicy/policy/modules/system/libraries.fc 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/libraries.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/libraries.fc 2007-11-30 11:23:56.000000000 -0500
@@ -65,11 +65,15 @@
/opt/(.*/)?java/.+\.jar -- gen_context(system_u:object_r:lib_t,s0)
/opt/(.*/)?jre.*/.+\.so(\.[^/]*)* -- gen_context(system_u:object_r:textrel_shlib_t,s0)
@@ -11737,9 +12744,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/librar
+/usr/lib/firefox-[^/]*/plugins/nppdf.so -- gen_context(system_u:object_r:textrel_shlib_t,s0)
+/opt/Adobe/Reader8/Reader/intellinux/plug_ins/.*\.api -- gen_context(system_u:object_r:textrel_shlib_t,s0)
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/libraries.te serefpolicy-3.1.2/policy/modules/system/libraries.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/libraries.te serefpolicy-3.2.1/policy/modules/system/libraries.te
--- nsaserefpolicy/policy/modules/system/libraries.te 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/libraries.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/libraries.te 2007-11-30 11:23:56.000000000 -0500
@@ -23,6 +23,9 @@
init_system_domain(ldconfig_t,ldconfig_exec_t)
role system_r types ldconfig_t;
@@ -11776,29 +12783,25 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/librar
files_search_var_lib(ldconfig_t)
files_read_etc_files(ldconfig_t)
files_search_tmp(ldconfig_t)
-@@ -79,6 +87,7 @@
+@@ -79,6 +87,8 @@
logging_send_syslog_msg(ldconfig_t)
userdom_use_all_users_fds(ldconfig_t)
+userdom_dontaudit_write_unpriv_user_home_content_files(ldconfig_t)
++userdom_manage_unpriv_users_tmp_files(ldconfig_t)
ifdef(`hide_broken_symptoms',`
optional_policy(`
-@@ -96,4 +105,11 @@
+@@ -96,4 +106,6 @@
# and executes ldconfig on it. If you dont allow this kernel installs
# blow up.
rpm_manage_script_tmp_files(ldconfig_t)
+ # smart package manager needs the following for the same reason
+ rpm_rw_tmp_files(ldconfig_t)
-+')
-+
-+optional_policy(`
-+ # run mkinitrd as unconfined user
-+ unconfined_manage_tmp_files(ldconfig_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/locallogin.te serefpolicy-3.1.2/policy/modules/system/locallogin.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/locallogin.te serefpolicy-3.2.1/policy/modules/system/locallogin.te
--- nsaserefpolicy/policy/modules/system/locallogin.te 2007-10-29 07:52:50.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/locallogin.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/locallogin.te 2007-11-30 11:23:56.000000000 -0500
@@ -25,7 +25,6 @@
domain_role_change_exemption(sulogin_t)
domain_interactive_fd(sulogin_t)
@@ -11836,9 +12839,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/locall
')
optional_policy(`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/logging.fc serefpolicy-3.1.2/policy/modules/system/logging.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/logging.fc serefpolicy-3.2.1/policy/modules/system/logging.fc
--- nsaserefpolicy/policy/modules/system/logging.fc 2007-11-06 09:18:37.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/logging.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/logging.fc 2007-11-30 11:23:56.000000000 -0500
@@ -29,6 +29,11 @@
/var/log -d gen_context(system_u:object_r:var_log_t,s0-mls_systemhigh)
@@ -11867,9 +12870,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/loggin
+
+/etc/rc\.d/init\.d/rsyslog -- gen_context(system_u:object_r:syslogd_script_exec_t,s0)
+/etc/rc\.d/init\.d/auditd -- gen_context(system_u:object_r:auditd_script_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/logging.if serefpolicy-3.1.2/policy/modules/system/logging.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/logging.if serefpolicy-3.2.1/policy/modules/system/logging.if
--- nsaserefpolicy/policy/modules/system/logging.if 2007-11-06 09:51:43.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/logging.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/logging.if 2007-11-30 11:23:56.000000000 -0500
@@ -577,6 +577,8 @@
files_search_var($1)
manage_files_pattern($1,logfile,logfile)
@@ -11966,9 +12969,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/loggin
+ init_script_domtrans_spec($1,auditd_script_exec_t)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/logging.te serefpolicy-3.1.2/policy/modules/system/logging.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/logging.te serefpolicy-3.2.1/policy/modules/system/logging.te
--- nsaserefpolicy/policy/modules/system/logging.te 2007-11-06 09:18:37.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/logging.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/logging.te 2007-11-30 11:23:56.000000000 -0500
@@ -61,6 +61,12 @@
logging_log_file(var_log_t)
files_mountpoint(var_log_t)
@@ -11990,9 +12993,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/loggin
domain_use_interactive_fds(klogd_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/lvm.fc serefpolicy-3.1.2/policy/modules/system/lvm.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/lvm.fc serefpolicy-3.2.1/policy/modules/system/lvm.fc
--- nsaserefpolicy/policy/modules/system/lvm.fc 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/lvm.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/lvm.fc 2007-11-30 11:23:56.000000000 -0500
@@ -15,6 +15,7 @@
#
/etc/lvm(/.*)? gen_context(system_u:object_r:lvm_etc_t,s0)
@@ -12001,9 +13004,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/lvm.fc
/etc/lvm/archive(/.*)? gen_context(system_u:object_r:lvm_metadata_t,s0)
/etc/lvm/backup(/.*)? gen_context(system_u:object_r:lvm_metadata_t,s0)
/etc/lvm/lock(/.*)? gen_context(system_u:object_r:lvm_lock_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/lvm.te serefpolicy-3.1.2/policy/modules/system/lvm.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/lvm.te serefpolicy-3.2.1/policy/modules/system/lvm.te
--- nsaserefpolicy/policy/modules/system/lvm.te 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/lvm.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/lvm.te 2007-11-30 11:23:56.000000000 -0500
@@ -44,9 +44,9 @@
# Cluster LVM daemon local policy
#
@@ -12169,9 +13172,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/lvm.te
+ xen_append_log(lvm_t)
+ xen_dontaudit_rw_unix_stream_sockets(lvm_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/modutils.if serefpolicy-3.1.2/policy/modules/system/modutils.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/modutils.if serefpolicy-3.2.1/policy/modules/system/modutils.if
--- nsaserefpolicy/policy/modules/system/modutils.if 2007-03-26 10:39:07.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/modutils.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/modutils.if 2007-11-30 11:23:56.000000000 -0500
@@ -66,6 +66,25 @@
########################################
@@ -12198,9 +13201,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/moduti
## Unconditionally execute insmod in the insmod domain.
##
##
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/modutils.te serefpolicy-3.1.2/policy/modules/system/modutils.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/modutils.te serefpolicy-3.2.1/policy/modules/system/modutils.te
--- nsaserefpolicy/policy/modules/system/modutils.te 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/modutils.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/modutils.te 2007-11-30 11:23:56.000000000 -0500
@@ -42,7 +42,7 @@
# insmod local policy
#
@@ -12286,30 +13289,34 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/moduti
fs_getattr_xattr_fs(depmod_t)
-@@ -205,9 +224,12 @@
- userdom_read_staff_home_content_files(depmod_t)
+@@ -202,12 +221,14 @@
+
+ # Read System.map from home directories.
+ files_list_home(depmod_t)
+-userdom_read_staff_home_content_files(depmod_t)
++userdom_read_unpriv_users_home_content_files(depmod_t)
userdom_read_sysadm_home_content_files(depmod_t)
+userdom_dontaudit_use_sysadm_terms(depmod_t)
+
optional_policy(`
# Read System.map from home directories.
- unconfined_read_home_content_files(depmod_t)
+- unconfined_read_home_content_files(depmod_t)
+ unconfined_dontaudit_use_terminals(depmod_t)
')
optional_policy(`
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/mount.fc serefpolicy-3.1.2/policy/modules/system/mount.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/mount.fc serefpolicy-3.2.1/policy/modules/system/mount.fc
--- nsaserefpolicy/policy/modules/system/mount.fc 2006-11-16 17:15:24.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/mount.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/mount.fc 2007-11-30 11:23:56.000000000 -0500
@@ -1,4 +1,2 @@
/bin/mount.* -- gen_context(system_u:object_r:mount_exec_t,s0)
/bin/umount.* -- gen_context(system_u:object_r:mount_exec_t,s0)
-
-/usr/bin/fusermount -- gen_context(system_u:object_r:mount_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/mount.te serefpolicy-3.1.2/policy/modules/system/mount.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/mount.te serefpolicy-3.2.1/policy/modules/system/mount.te
--- nsaserefpolicy/policy/modules/system/mount.te 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/mount.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/mount.te 2007-11-30 11:24:14.000000000 -0500
@@ -8,7 +8,7 @@
##
@@ -12413,14 +13420,14 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/mount.
########################################
#
# Unconfined mount local policy
-@@ -201,4 +200,29 @@
+@@ -201,4 +200,26 @@
optional_policy(`
files_etc_filetrans_etc_runtime(unconfined_mount_t,file)
unconfined_domain(unconfined_mount_t)
+ optional_policy(`
+ hal_dbus_chat(unconfined_mount_t)
+ ')
-+')
+ ')
+
+########################################
+#
@@ -12432,20 +13439,17 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/mount.
+
+corecmd_exec_shell(mount_t)
+
-+fusermount_domtrans(mount_t)
-+fusermount_use_fds(mount_t)
-+
+modutils_domtrans_insmod(mount_t)
+
+optional_policy(`
+ hal_write_log(mount_t)
+ hal_use_fds(mount_t)
+ hal_rw_pipes(mount_t)
- ')
++')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/raid.te serefpolicy-3.1.2/policy/modules/system/raid.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/raid.te serefpolicy-3.2.1/policy/modules/system/raid.te
--- nsaserefpolicy/policy/modules/system/raid.te 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/raid.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/raid.te 2007-11-30 11:23:56.000000000 -0500
@@ -19,7 +19,7 @@
# Local policy
#
@@ -12471,9 +13475,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/raid.t
+optional_policy(`
+ unconfined_domain(mdadm_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinuxutil.fc serefpolicy-3.1.2/policy/modules/system/selinuxutil.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinuxutil.fc serefpolicy-3.2.1/policy/modules/system/selinuxutil.fc
--- nsaserefpolicy/policy/modules/system/selinuxutil.fc 2007-05-18 11:12:44.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/selinuxutil.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/selinuxutil.fc 2007-11-30 11:23:56.000000000 -0500
@@ -38,7 +38,7 @@
/usr/sbin/restorecond -- gen_context(system_u:object_r:restorecond_exec_t,s0)
/usr/sbin/run_init -- gen_context(system_u:object_r:run_init_exec_t,s0)
@@ -12483,10 +13487,19 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
/usr/sbin/semanage -- gen_context(system_u:object_r:semanage_exec_t,s0)
/usr/sbin/semodule -- gen_context(system_u:object_r:semanage_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinuxutil.if serefpolicy-3.1.2/policy/modules/system/selinuxutil.if
---- nsaserefpolicy/policy/modules/system/selinuxutil.if 2007-11-16 13:58:21.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/selinuxutil.if 2007-11-26 16:40:13.000000000 -0500
-@@ -585,7 +585,7 @@
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinuxutil.if serefpolicy-3.2.1/policy/modules/system/selinuxutil.if
+--- nsaserefpolicy/policy/modules/system/selinuxutil.if 2007-11-29 13:29:35.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/selinuxutil.if 2007-11-30 11:23:56.000000000 -0500
+@@ -215,8 +215,6 @@
+ seutil_domtrans_newrole($1)
+ role $2 types newrole_t;
+ allow newrole_t $3:chr_file rw_term_perms;
+-
+- auth_run_upd_passwd(newrole_t, $2, $3)
+ ')
+
+ ########################################
+@@ -587,7 +585,7 @@
type selinux_config_t;
')
@@ -12495,7 +13508,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
')
########################################
-@@ -604,7 +604,7 @@
+@@ -606,7 +604,7 @@
type selinux_config_t;
')
@@ -12504,7 +13517,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
dontaudit $1 selinux_config_t:file { getattr read };
')
-@@ -696,6 +696,7 @@
+@@ -698,6 +696,7 @@
')
files_search_etc($1)
@@ -12512,7 +13525,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
manage_files_pattern($1,selinux_config_t,selinux_config_t)
read_lnk_files_pattern($1,selinux_config_t,selinux_config_t)
')
-@@ -805,6 +806,28 @@
+@@ -807,6 +806,28 @@
########################################
##
@@ -12533,7 +13546,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
+ files_search_etc($1)
+ dontaudit $1 { selinux_config_t default_context_t }:dir search_dir_perms;
+ dontaudit $1 file_context_t:dir search_dir_perms;
-+ dontaudit $1 file_context_t:file r_file_perms;
++ dontaudit $1 file_context_t:file read_file_perms;
+')
+
+########################################
@@ -12541,7 +13554,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
## Read and write the file_contexts files.
##
##
-@@ -995,6 +1018,26 @@
+@@ -997,6 +1018,26 @@
########################################
##
@@ -12568,7 +13581,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
## Execute semanage in the semanage domain, and
## allow the specified role the semanage domain,
## and use the caller's terminal.
-@@ -1006,7 +1049,7 @@
+@@ -1008,7 +1049,7 @@
##
##
##
@@ -12577,7 +13590,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
##
##
##
-@@ -1028,6 +1071,39 @@
+@@ -1030,6 +1071,39 @@
########################################
##
@@ -12617,7 +13630,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
## Full management of the semanage
## module store.
##
-@@ -1139,3 +1215,140 @@
+@@ -1141,3 +1215,140 @@
selinux_dontaudit_get_fs_mount($1)
seutil_dontaudit_read_config($1)
')
@@ -12758,9 +13771,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
+ rpm_dontaudit_rw_pipes($1)
+ ')
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinuxutil.te serefpolicy-3.1.2/policy/modules/system/selinuxutil.te
---- nsaserefpolicy/policy/modules/system/selinuxutil.te 2007-11-16 13:45:14.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/selinuxutil.te 2007-11-26 16:40:13.000000000 -0500
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinuxutil.te serefpolicy-3.2.1/policy/modules/system/selinuxutil.te
+--- nsaserefpolicy/policy/modules/system/selinuxutil.te 2007-11-29 13:29:35.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/selinuxutil.te 2007-11-30 11:23:56.000000000 -0500
@@ -75,7 +75,6 @@
type restorecond_exec_t;
init_daemon_domain(restorecond_t,restorecond_exec_t)
@@ -12780,18 +13793,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
type semanage_store_t;
files_type(semanage_store_t)
-@@ -109,10 +112,6 @@
- init_system_domain(setfiles_t,setfiles_exec_t)
- domain_obj_id_change_exemption(setfiles_t)
-
--ifdef(`distro_redhat',`
-- init_system_domain(setfiles_t,setfiles_exec_t)
--')
--
- ########################################
- #
- # Checkpolicy local policy
-@@ -166,6 +165,7 @@
+@@ -162,6 +165,7 @@
files_read_etc_runtime_files(load_policy_t)
fs_getattr_xattr_fs(load_policy_t)
@@ -12799,7 +13801,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
mls_file_read_all_levels(load_policy_t)
-@@ -187,15 +187,11 @@
+@@ -183,15 +187,11 @@
userdom_use_all_users_fds(load_policy_t)
@@ -12818,7 +13820,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
########################################
#
# Newrole local policy
-@@ -213,7 +209,7 @@
+@@ -209,7 +209,7 @@
allow newrole_t self:msg { send receive };
allow newrole_t self:unix_dgram_socket sendto;
allow newrole_t self:unix_stream_socket { create_stream_socket_perms connectto };
@@ -12827,15 +13829,16 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
read_files_pattern(newrole_t,default_context_t,default_context_t)
read_lnk_files_pattern(newrole_t,default_context_t,default_context_t)
-@@ -259,6 +255,7 @@
+@@ -255,7 +255,7 @@
auth_use_nsswitch(newrole_t)
auth_domtrans_chk_passwd(newrole_t)
+-auth_domtrans_upd_passwd(newrole_t)
+auth_domtrans_upd_passwd_chk(newrole_t)
auth_rw_faillog(newrole_t)
# Write to utmp.
-@@ -268,6 +265,7 @@
+@@ -265,6 +265,7 @@
libs_use_ld_so(newrole_t)
libs_use_shared_libs(newrole_t)
@@ -12843,7 +13846,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
logging_send_syslog_msg(newrole_t)
miscfiles_read_localization(newrole_t)
-@@ -302,6 +300,8 @@
+@@ -299,6 +300,8 @@
allow restorecond_t restorecond_var_run_t:file manage_file_perms;
files_pid_filetrans(restorecond_t,restorecond_var_run_t, file)
@@ -12852,7 +13855,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
kernel_use_fds(restorecond_t)
kernel_rw_pipes(restorecond_t)
kernel_read_system_state(restorecond_t)
-@@ -332,6 +332,8 @@
+@@ -329,6 +332,8 @@
seutil_libselinux_linked(restorecond_t)
@@ -12861,7 +13864,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
optional_policy(`
rpm_use_script_fds(restorecond_t)
')
-@@ -344,7 +346,7 @@
+@@ -341,7 +346,7 @@
allow run_init_t self:process setexec;
allow run_init_t self:capability setuid;
allow run_init_t self:fifo_file rw_file_perms;
@@ -12870,7 +13873,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
# often the administrator runs such programs from a directory that is owned
# by a different user or has restrictive SE permissions, do not want to audit
-@@ -375,6 +377,7 @@
+@@ -372,6 +377,7 @@
auth_use_nsswitch(run_init_t)
auth_domtrans_chk_passwd(run_init_t)
@@ -12878,7 +13881,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
auth_dontaudit_read_shadow(run_init_t)
init_spec_domtrans_script(run_init_t)
-@@ -407,72 +410,31 @@
+@@ -404,72 +410,31 @@
# semodule local policy
#
@@ -12897,9 +13900,13 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
-kernel_read_kernel_sysctls(semanage_t)
-
-corecmd_exec_bin(semanage_t)
--
++seutil_semanage_policy(semanage_t)
++can_exec(semanage_t, semanage_exec_t)
+
-dev_read_urand(semanage_t)
--
++# Admins are creating pp files in random locations
++auth_read_all_files_except_shadow(semanage_t)
+
-domain_use_interactive_fds(semanage_t)
-
-files_read_etc_files(semanage_t)
@@ -12923,13 +13930,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
-
-libs_use_ld_so(semanage_t)
-libs_use_shared_libs(semanage_t)
-+seutil_semanage_policy(semanage_t)
-+can_exec(semanage_t, semanage_exec_t)
-
+-
-locallogin_use_fds(semanage_t)
-+# Admins are creating pp files in random locations
-+auth_read_all_files_except_shadow(semanage_t)
-
+-
-logging_send_syslog_msg(semanage_t)
-
-miscfiles_read_localization(semanage_t)
@@ -12963,7 +13966,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
# cjp: need a more general way to handle this:
ifdef(`enable_mls',`
# read secadm tmp files
-@@ -489,17 +451,38 @@
+@@ -477,26 +442,44 @@
+ # Handle pp files created in homedir and /tmp
+ userdom_read_sysadm_home_content_files(semanage_t)
+ userdom_read_sysadm_tmp_files(semanage_t)
+-
+- optional_policy(`
+- unconfined_read_home_content_files(semanage_t)
+- unconfined_read_tmp_files(semanage_t)
+- ')
++ userdom_read_unpriv_users_home_content_files(semanage_t)
++ userdom_read_unpriv_users_tmp_files(semanage_t)
+ ')
########################################
#
@@ -13002,7 +14016,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
kernel_read_system_state(setfiles_t)
kernel_relabelfrom_unlabeled_dirs(setfiles_t)
kernel_relabelfrom_unlabeled_files(setfiles_t)
-@@ -521,9 +504,12 @@
+@@ -518,9 +501,12 @@
files_read_etc_files(setfiles_t)
files_list_all(setfiles_t)
files_relabel_all_files(setfiles_t)
@@ -13015,7 +14029,21 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
fs_search_auto_mountpoints(setfiles_t)
fs_relabelfrom_noxattr_fs(setfiles_t)
-@@ -570,18 +556,6 @@
+@@ -560,13 +546,6 @@
+ # for config files in a home directory
+ userdom_read_all_users_home_content_files(setfiles_t)
+
+-ifdef(`distro_debian',`
+- # udev tmpfs is populated with static device nodes
+- # and then relabeled afterwards; thus
+- # /dev/console has the tmpfs type
+- fs_rw_tmpfs_chr_files(setfiles_t)
+-')
+-
+ ifdef(`distro_redhat', `
+ fs_rw_tmpfs_chr_files(setfiles_t)
+ fs_rw_tmpfs_blk_files(setfiles_t)
+@@ -574,18 +553,6 @@
fs_relabel_tmpfs_chr_file(setfiles_t)
')
@@ -13034,9 +14062,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu
optional_policy(`
hotplug_use_fds(setfiles_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/sysnetwork.fc serefpolicy-3.1.2/policy/modules/system/sysnetwork.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/sysnetwork.fc serefpolicy-3.2.1/policy/modules/system/sysnetwork.fc
--- nsaserefpolicy/policy/modules/system/sysnetwork.fc 2006-11-16 17:15:24.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/sysnetwork.fc 2007-11-28 11:55:44.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/sysnetwork.fc 2007-11-30 11:23:56.000000000 -0500
@@ -52,8 +52,7 @@
/var/lib/dhcpcd(/.*)? gen_context(system_u:object_r:dhcpc_state_t,s0)
/var/lib/dhclient(/.*)? gen_context(system_u:object_r:dhcpc_state_t,s0)
@@ -13047,9 +14075,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/sysnet
ifdef(`distro_gentoo',`
/var/lib/dhcpc(/.*)? gen_context(system_u:object_r:dhcpc_state_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/sysnetwork.if serefpolicy-3.1.2/policy/modules/system/sysnetwork.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/sysnetwork.if serefpolicy-3.2.1/policy/modules/system/sysnetwork.if
--- nsaserefpolicy/policy/modules/system/sysnetwork.if 2007-07-16 14:09:49.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/sysnetwork.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/sysnetwork.if 2007-11-30 11:23:56.000000000 -0500
@@ -145,6 +145,25 @@
########################################
@@ -13120,9 +14148,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/sysnet
+ dontaudit $1 dhcpc_t:fd use;
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/sysnetwork.te serefpolicy-3.1.2/policy/modules/system/sysnetwork.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/sysnetwork.te serefpolicy-3.2.1/policy/modules/system/sysnetwork.te
--- nsaserefpolicy/policy/modules/system/sysnetwork.te 2007-10-29 07:52:50.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/sysnetwork.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/sysnetwork.te 2007-11-30 11:23:56.000000000 -0500
@@ -45,7 +45,7 @@
dontaudit dhcpc_t self:capability sys_tty_config;
# for access("/etc/bashrc", X_OK) on Red Hat
@@ -13253,9 +14281,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/sysnet
kernel_read_xen_state(ifconfig_t)
kernel_write_xen_state(ifconfig_t)
xen_append_log(ifconfig_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/udev.te serefpolicy-3.1.2/policy/modules/system/udev.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/udev.te serefpolicy-3.2.1/policy/modules/system/udev.te
--- nsaserefpolicy/policy/modules/system/udev.te 2007-11-15 13:40:14.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/udev.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/udev.te 2007-11-30 11:23:56.000000000 -0500
@@ -186,6 +186,7 @@
optional_policy(`
@@ -13264,18 +14292,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/udev.t
alsa_read_rw_config(udev_t)
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconfined.fc serefpolicy-3.1.2/policy/modules/system/unconfined.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconfined.fc serefpolicy-3.2.1/policy/modules/system/unconfined.fc
--- nsaserefpolicy/policy/modules/system/unconfined.fc 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/unconfined.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/unconfined.fc 2007-11-30 11:23:56.000000000 -0500
@@ -10,3 +10,5 @@
/usr/lib/openoffice\.org.*/program/.+\.bin -- gen_context(system_u:object_r:unconfined_execmem_exec_t,s0)
/usr/local/RealPlayer/realplay\.bin -- gen_context(system_u:object_r:unconfined_execmem_exec_t,s0)
+/usr/bin/rhythmbox -- gen_context(system_u:object_r:unconfined_execmem_exec_t,s0)
+/usr/bin/sbcl -- gen_context(system_u:object_r:unconfined_execmem_exec_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconfined.if serefpolicy-3.1.2/policy/modules/system/unconfined.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconfined.if serefpolicy-3.2.1/policy/modules/system/unconfined.if
--- nsaserefpolicy/policy/modules/system/unconfined.if 2007-11-16 15:30:49.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/unconfined.if 2007-11-26 21:51:39.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/unconfined.if 2007-11-30 11:23:56.000000000 -0500
@@ -12,14 +12,13 @@
#
interface(`unconfined_domain_noaudit',`
@@ -13310,46 +14338,11 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
kernel_unconfined($1)
corenet_unconfined($1)
-@@ -603,9 +603,9 @@
- ')
-
- files_search_home($1)
-- allow $1 { unconfined_home_dir_t unconfined_home_t }:dir list_dir_perms;
-- read_files_pattern($1, { unconfined_home_dir_t unconfined_home_t }, unconfined_home_t)
-- read_lnk_files_pattern($1, { unconfined_home_dir_t unconfined_home_t }, unconfined_home_t)
-+ allow $1 { unconfined_home_dir_t sysadm_home_t }:dir list_dir_perms;
-+ read_files_pattern($1,{ unconfined_home_dir_t unconfined_home_t },unconfined_home_t)
-+ read_lnk_files_pattern($1,{ unconfined_home_dir_t unconfined_home_t },unconfined_home_t)
- ')
+@@ -589,7 +589,101 @@
########################################
-@@ -646,3 +646,198 @@
-
- allow $1 unconfined_tmp_t:file { getattr write append };
- ')
-+
-+########################################
-+##
-+## manage unconfined users temporary files.
-+##
-+##
-+##
-+## Domain allowed access.
-+##
-+##
-+#
-+interface(`unconfined_manage_tmp_files',`
-+ gen_require(`
-+ type unconfined_tmp_t;
-+ ')
-+
-+ files_search_tmp($1)
-+ manage_files_pattern($1,unconfined_tmp_t,unconfined_tmp_t)
-+ manage_lnk_files_pattern($1,unconfined_tmp_t,unconfined_tmp_t)
-+')
-+
-+########################################
-+##
+ ##
+-## Read files in unconfined users home directories.
+## Allow ptrace of unconfined domain
+##
+##
@@ -13445,57 +14438,73 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
+########################################
+##
+## Allow apps to set rlimits on userdomain
-+##
-+##
-+##
-+## Domain allowed access.
-+##
-+##
-+#
+ ##
+ ##
+ ##
+@@ -597,20 +691,18 @@
+ ##
+ ##
+ #
+-interface(`unconfined_read_home_content_files',`
+interface(`unconfined_set_rlimitnh',`
-+ gen_require(`
+ gen_require(`
+- type unconfined_home_dir_t, unconfined_home_t;
+ type unconfined_t;
-+ ')
-+
+ ')
+
+- files_search_home($1)
+- allow $1 { unconfined_home_dir_t unconfined_home_t }:dir list_dir_perms;
+- read_files_pattern($1, { unconfined_home_dir_t unconfined_home_t }, unconfined_home_t)
+- read_lnk_files_pattern($1, { unconfined_home_dir_t unconfined_home_t }, unconfined_home_t)
+ allow $1 unconfined_t:process rlimitinh;
-+')
-+
-+########################################
-+##
+ ')
+
+ ########################################
+ ##
+-## Read unconfined users temporary files.
+## Allow the specified domain to read/write to
+## unconfined with a unix domain stream sockets.
-+##
-+##
-+##
-+## Domain allowed access.
-+##
-+##
-+#
+ ##
+ ##
+ ##
+@@ -618,31 +710,54 @@
+ ##
+ ##
+ #
+-interface(`unconfined_read_tmp_files',`
+interface(`unconfined_rw_stream_sockets',`
-+ gen_require(`
+ gen_require(`
+- type unconfined_tmp_t;
+ type unconfined_t;
-+ ')
-+
+ ')
+
+- files_search_tmp($1)
+- allow $1 unconfined_tmp_t:dir list_dir_perms;
+- read_files_pattern($1, unconfined_tmp_t, unconfined_tmp_t)
+- read_lnk_files_pattern($1, unconfined_tmp_t, unconfined_tmp_t)
+ allow $1 unconfined_t:unix_stream_socket { read write };
-+')
-+
-+########################################
-+##
+ ')
+
+ ########################################
+ ##
+-## Write unconfined users temporary files.
+## Read/write unconfined tmpfs files.
-+##
+ ##
+##
+##
+## Read/write unconfined tmpfs files.
+##
+##
-+##
-+##
-+## Domain allowed access.
-+##
-+##
-+#
+ ##
+ ##
+ ## Domain allowed access.
+ ##
+ ##
+ #
+-interface(`unconfined_write_tmp_files',`
+interface(`unconfined_rw_tmpfs_files',`
-+ gen_require(`
+ gen_require(`
+- type unconfined_tmp_t;
+ type unconfined_tmpfs_t;
+ ')
+
@@ -13518,14 +14527,24 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
+interface(`unconfined_getpgid',`
+ gen_require(`
+ type unconfined_t;
-+ ')
-+
+ ')
+
+- allow $1 unconfined_tmp_t:file { getattr write append };
+ allow $1 unconfined_t:process getpgid;
-+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconfined.te serefpolicy-3.1.2/policy/modules/system/unconfined.te
+ ')
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconfined.te serefpolicy-3.2.1/policy/modules/system/unconfined.te
--- nsaserefpolicy/policy/modules/system/unconfined.te 2007-11-16 15:30:49.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/unconfined.te 2007-11-28 08:47:02.000000000 -0500
-@@ -16,6 +16,10 @@
++++ serefpolicy-3.2.1/policy/modules/system/unconfined.te 2007-11-30 11:23:56.000000000 -0500
+@@ -9,13 +9,15 @@
+ # usage in this module of types created by these
+ # calls is not correct, however we dont currently
+ # have another method to add access to these types
+-userdom_base_user_template(unconfined)
+-userdom_manage_home_template(unconfined)
+-userdom_manage_tmp_template(unconfined)
+-userdom_manage_tmpfs_template(unconfined)
++userdom_unpriv_user_template(unconfined)
++userdom_xwindows_client_template(unconfined)
type unconfined_exec_t;
init_system_domain(unconfined_t, unconfined_exec_t)
@@ -13536,7 +14555,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
type unconfined_execmem_t;
type unconfined_execmem_exec_t;
-@@ -27,14 +31,21 @@
+@@ -27,14 +29,21 @@
# Local policy
#
@@ -13558,7 +14577,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
libs_run_ldconfig(unconfined_t, unconfined_r, { unconfined_devpts_t unconfined_tty_device_t })
-@@ -42,7 +53,10 @@
+@@ -42,7 +51,10 @@
logging_run_auditctl(unconfined_t, unconfined_r, { unconfined_devpts_t unconfined_tty_device_t })
mount_run_unconfined(unconfined_t, unconfined_r, { unconfined_devpts_t unconfined_tty_device_t })
@@ -13569,7 +14588,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
seutil_run_setfiles(unconfined_t, unconfined_r, { unconfined_devpts_t unconfined_tty_device_t })
seutil_run_semanage(unconfined_t, unconfined_r, { unconfined_devpts_t unconfined_tty_device_t })
-@@ -51,13 +65,13 @@
+@@ -51,13 +63,13 @@
userdom_priveleged_home_dir_manager(unconfined_t)
optional_policy(`
@@ -13585,7 +14604,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
unconfined_domain(httpd_unconfined_script_t)
')
-@@ -71,8 +85,8 @@
+@@ -71,8 +83,8 @@
optional_policy(`
cron_per_role_template(unconfined, unconfined_t, unconfined_r)
@@ -13596,7 +14615,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
')
optional_policy(`
-@@ -107,6 +121,10 @@
+@@ -107,6 +119,10 @@
optional_policy(`
oddjob_dbus_chat(unconfined_t)
')
@@ -13607,7 +14626,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
')
optional_policy(`
-@@ -118,11 +136,11 @@
+@@ -118,11 +134,11 @@
')
optional_policy(`
@@ -13621,7 +14640,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
')
optional_policy(`
-@@ -134,11 +152,7 @@
+@@ -134,11 +150,7 @@
')
optional_policy(`
@@ -13634,7 +14653,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
')
optional_policy(`
-@@ -154,33 +168,20 @@
+@@ -154,33 +166,20 @@
')
optional_policy(`
@@ -13672,7 +14691,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
')
optional_policy(`
-@@ -205,11 +206,22 @@
+@@ -205,11 +204,22 @@
')
optional_policy(`
@@ -13697,7 +14716,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
')
########################################
-@@ -219,14 +231,26 @@
+@@ -219,14 +229,26 @@
allow unconfined_execmem_t self:process { execstack execmem };
unconfined_domain_noaudit(unconfined_execmem_t)
@@ -13724,18 +14743,22 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf
+
+ ')
')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdomain.fc serefpolicy-3.1.2/policy/modules/system/userdomain.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdomain.fc serefpolicy-3.2.1/policy/modules/system/userdomain.fc
--- nsaserefpolicy/policy/modules/system/userdomain.fc 2007-02-19 11:32:53.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/userdomain.fc 2007-11-26 16:40:13.000000000 -0500
-@@ -1,4 +1,4 @@
- HOME_DIR -d gen_context(system_u:object_r:ROLE_home_dir_t,s0-mls_systemhigh)
-+HOME_DIR -l gen_context(system_u:object_r:ROLE_home_dir_t,s0-mls_systemhigh)
- HOME_DIR/.+ gen_context(system_u:object_r:ROLE_home_t,s0)
++++ serefpolicy-3.2.1/policy/modules/system/userdomain.fc 2007-11-30 11:23:56.000000000 -0500
+@@ -1,4 +1,5 @@
+-HOME_DIR -d gen_context(system_u:object_r:ROLE_home_dir_t,s0-mls_systemhigh)
+-HOME_DIR/.+ gen_context(system_u:object_r:ROLE_home_t,s0)
-
- /tmp/gconfd-USER -d gen_context(system_u:object_r:ROLE_tmp_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdomain.if serefpolicy-3.1.2/policy/modules/system/userdomain.if
---- nsaserefpolicy/policy/modules/system/userdomain.if 2007-11-14 08:17:58.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/userdomain.if 2007-11-28 07:19:08.000000000 -0500
+-/tmp/gconfd-USER -d gen_context(system_u:object_r:ROLE_tmp_t,s0)
++HOME_DIR -d gen_context(system_u:object_r:user_home_dir_t,s0-mls_systemhigh)
++HOME_DIR -l gen_context(system_u:object_r:user_home_dir_t,s0-mls_systemhigh)
++HOME_DIR/.+ gen_context(system_u:object_r:user_home_t,s0)
++/tmp/gconfd-USER -d gen_context(system_u:object_r:user_tmp_t,s0)
++/root(/.*) gen_context(system_u:object_r:admin_home_t,s0)
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdomain.if serefpolicy-3.2.1/policy/modules/system/userdomain.if
+--- nsaserefpolicy/policy/modules/system/userdomain.if 2007-11-29 13:29:35.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/userdomain.if 2007-11-30 15:06:10.000000000 -0500
@@ -29,8 +29,9 @@
')
@@ -13857,17 +14880,17 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
+ dev_dontaudit_getattr_all_chr_files($1_usertype)
+
+ auth_use_nsswitch($1_usertype)
-
-- miscfiles_read_localization($1_t)
-- miscfiles_read_certs($1_t)
++
+ libs_use_ld_so($1_usertype)
+ libs_use_shared_libs($1_usertype)
+ libs_exec_ld_so($1_usertype)
-- sysnet_read_config($1_t)
+- miscfiles_read_localization($1_t)
+- miscfiles_read_certs($1_t)
+ miscfiles_read_localization($1_usertype)
+ miscfiles_read_certs($1_usertype)
-+
+
+- sysnet_read_config($1_t)
+ sysnet_read_config($1_usertype)
tunable_policy(`allow_execmem',`
@@ -13883,10 +14906,108 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
#######################################
-@@ -263,42 +274,42 @@
+@@ -141,33 +152,13 @@
+ #
+ template(`userdom_ro_home_template',`
+ gen_require(`
+- attribute home_type, home_dir_type, $1_file_type;
++ type user_home_t, user_home_dir_t;
+ ')
+
+- # type for contents of home directory
+- type $1_home_t, $1_file_type, home_type;
+- files_type($1_home_t)
+- files_associate_tmp($1_home_t)
+- fs_associate_tmpfs($1_home_t)
+- files_mountpoint($1_home_t)
+-
+- # type of home directory
+- type $1_home_dir_t, home_dir_type, home_type;
+- files_type($1_home_dir_t)
+- files_mountpoint($1_home_dir_t)
+- files_associate_tmp($1_home_dir_t)
+- fs_associate_tmpfs($1_home_dir_t)
+- files_poly_member($1_home_dir_t)
+-
+- ##############################
+- #
+- # User home directory file rules
+- #
+-
+- allow $1_file_type $1_home_t:filesystem associate;
+-
+- # Rules used to associate a homedir as a mountpoint
+- allow $1_home_t self:filesystem associate;
++ ifelse(`$1',`user',`',`
++ typealias user_home_t alias $1_home_t;
++ typealias user_home_dir_t alias $1_home_dir_t;
++ ')
+
+ ##############################
+ #
+@@ -175,13 +166,13 @@
+ #
+
+ # read-only home directory
+- allow $1_t $1_home_dir_t:dir list_dir_perms;
+- allow $1_t $1_home_t:dir list_dir_perms;
+- allow $1_t $1_home_t:file entrypoint;
+- read_files_pattern($1_t,{ $1_home_t $1_home_dir_t },$1_home_t)
+- read_lnk_files_pattern($1_t,{ $1_home_t $1_home_dir_t },$1_home_t)
+- read_fifo_files_pattern($1_t,{ $1_home_t $1_home_dir_t },$1_home_t)
+- read_sock_files_pattern($1_t,{ $1_home_t $1_home_dir_t },$1_home_t)
++ allow $1_t user_home_dir_t:dir list_dir_perms;
++ allow $1_t user_home_t:dir list_dir_perms;
++ allow $1_t user_home_t:file entrypoint;
++ read_files_pattern($1_t,{ user_home_t user_home_dir_t },user_home_t)
++ read_lnk_files_pattern($1_t,{ user_home_t user_home_dir_t },user_home_t)
++ read_fifo_files_pattern($1_t,{ user_home_t user_home_dir_t },user_home_t)
++ read_sock_files_pattern($1_t,{ user_home_t user_home_dir_t },user_home_t)
+ files_list_home($1_t)
+
+ tunable_policy(`use_nfs_home_dirs',`
+@@ -231,30 +222,14 @@
+ #
+ template(`userdom_manage_home_template',`
+ gen_require(`
+- attribute home_type, home_dir_type, $1_file_type;
++ attribute home_type, home_dir_type;
++ type user_home_t, user_home_dir_t;
+ ')
+
+- # type for contents of home directory
+- type $1_home_t, $1_file_type, home_type;
+- files_type($1_home_t)
+- files_associate_tmp($1_home_t)
+- fs_associate_tmpfs($1_home_t)
+-
+- # type of home directory
+- type $1_home_dir_t, home_dir_type, home_type;
+- files_type($1_home_dir_t)
+- files_associate_tmp($1_home_dir_t)
+- fs_associate_tmpfs($1_home_dir_t)
+-
+- ##############################
+- #
+- # User home directory file rules
+- #
+-
+- allow $1_file_type $1_home_t:filesystem associate;
+-
+- # Rules used to associate a homedir as a mountpoint
+- allow $1_home_t self:filesystem associate;
++ ifelse(`$1',`user',`',`
++ typealias user_home_t alias $1_home_t;
++ typealias user_home_dir_t alias $1_home_dir_t;
++ ')
+
+ ##############################
+ #
+@@ -262,43 +237,43 @@
+ #
# full control of the home directory
- allow $1_t $1_home_t:file entrypoint;
+- allow $1_t $1_home_t:file entrypoint;
- manage_dirs_pattern($1_t,{ $1_home_dir_t $1_home_t },$1_home_t)
- manage_files_pattern($1_t,{ $1_home_dir_t $1_home_t },$1_home_t)
- manage_lnk_files_pattern($1_t,{ $1_home_dir_t $1_home_t },$1_home_t)
@@ -13899,22 +15020,23 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
- relabel_fifo_files_pattern($1_t,{ $1_home_dir_t $1_home_t },$1_home_t)
- filetrans_pattern($1_t,$1_home_dir_t,$1_home_t,{ dir file lnk_file sock_file fifo_file })
- files_list_home($1_t)
-+ manage_dirs_pattern($1_usertype,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ manage_files_pattern($1_usertype,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ manage_lnk_files_pattern($1_usertype,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ manage_sock_files_pattern($1_usertype,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ manage_fifo_files_pattern($1_usertype,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ relabel_dirs_pattern($1_usertype,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ relabel_files_pattern($1_usertype,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ relabel_lnk_files_pattern($1_usertype,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ relabel_sock_files_pattern($1_usertype,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ relabel_fifo_files_pattern($1_usertype,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ filetrans_pattern($1_usertype,$1_home_dir_t,$1_home_t,{ dir file lnk_file sock_file fifo_file })
++ allow $1_t user_home_t:file entrypoint;
++ manage_dirs_pattern($1_usertype,{ user_home_dir_t user_home_t },user_home_t)
++ manage_files_pattern($1_usertype,{ user_home_dir_t user_home_t },user_home_t)
++ manage_lnk_files_pattern($1_usertype,{ user_home_dir_t user_home_t },user_home_t)
++ manage_sock_files_pattern($1_usertype,{ user_home_dir_t user_home_t },user_home_t)
++ manage_fifo_files_pattern($1_usertype,{ user_home_dir_t user_home_t },user_home_t)
++ relabel_dirs_pattern($1_usertype,{ user_home_dir_t user_home_t },user_home_t)
++ relabel_files_pattern($1_usertype,{ user_home_dir_t user_home_t },user_home_t)
++ relabel_lnk_files_pattern($1_usertype,{ user_home_dir_t user_home_t },user_home_t)
++ relabel_sock_files_pattern($1_usertype,{ user_home_dir_t user_home_t },user_home_t)
++ relabel_fifo_files_pattern($1_usertype,{ user_home_dir_t user_home_t },user_home_t)
++ filetrans_pattern($1_usertype,user_home_dir_t,user_home_t,{ dir file lnk_file sock_file fifo_file })
+ files_list_home($1_usertype)
# cjp: this should probably be removed:
- allow $1_t $1_home_dir_t:dir { manage_dir_perms relabel_dir_perms };
-+ allow $1_usertype $1_home_dir_t:dir { manage_dir_perms relabel_dir_perms };
++ allow $1_usertype user_home_dir_t:dir { manage_dir_perms relabel_dir_perms };
tunable_policy(`use_nfs_home_dirs',`
- fs_manage_nfs_dirs($1_t)
@@ -13953,7 +15075,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
')
-@@ -316,14 +327,20 @@
+@@ -316,14 +291,20 @@
##
#
template(`userdom_exec_home_template',`
@@ -13962,9 +15084,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
- tunable_policy(`use_nfs_home_dirs',`
- fs_exec_nfs_files($1_t)
+ tunable_policy(`allow_$1_exec_content', `
-+ can_exec($1_usertype,$1_home_t)
++ can_exec($1_usertype,user_home_t)
+ ',`
-+ dontaudit $1_usertype $1_home_t:file execute;
++ dontaudit $1_usertype user_home_t:file execute;
')
- tunable_policy(`use_samba_home_dirs',`
@@ -13979,37 +15101,67 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
')
-@@ -375,12 +392,12 @@
- type $1_tmp_t, $1_file_type;
- files_tmp_file($1_tmp_t)
+@@ -341,11 +322,10 @@
+ ##
+ #
+ template(`userdom_poly_home_template',`
+- type_member $1_t $1_home_dir_t:dir $1_home_dir_t;
+- files_poly($1_home_dir_t)
+- files_poly_parent($1_home_dir_t)
+- files_poly_parent($1_home_t)
+- files_poly_member($1_home_t)
++ gen_require(`
++ type user_home_dir_t;
++ ')
++ type_member $1_t user_home_dir_t:dir user_home_dir_t;
+ ')
+ #######################################
+@@ -369,18 +349,18 @@
+ #
+ template(`userdom_manage_tmp_template',`
+ gen_require(`
+- attribute $1_file_type;
++ type user_tmp_t;
+ ')
+
+- type $1_tmp_t, $1_file_type;
+- files_tmp_file($1_tmp_t)
+-
- manage_dirs_pattern($1_t,$1_tmp_t,$1_tmp_t)
- manage_files_pattern($1_t,$1_tmp_t,$1_tmp_t)
- manage_lnk_files_pattern($1_t,$1_tmp_t,$1_tmp_t)
- manage_sock_files_pattern($1_t,$1_tmp_t,$1_tmp_t)
- manage_fifo_files_pattern($1_t,$1_tmp_t,$1_tmp_t)
- files_tmp_filetrans($1_t, $1_tmp_t, { dir file lnk_file sock_file fifo_file })
-+ manage_dirs_pattern($1_usertype,$1_tmp_t,$1_tmp_t)
-+ manage_files_pattern($1_usertype,$1_tmp_t,$1_tmp_t)
-+ manage_lnk_files_pattern($1_usertype,$1_tmp_t,$1_tmp_t)
-+ manage_sock_files_pattern($1_usertype,$1_tmp_t,$1_tmp_t)
-+ manage_fifo_files_pattern($1_usertype,$1_tmp_t,$1_tmp_t)
-+ files_tmp_filetrans($1_usertype, $1_tmp_t, { dir file lnk_file sock_file fifo_file })
++ ifelse(`$1',`user',`',`
++ typealias user_tmp_t alias $1_tmp_t;
++ ')
++ manage_dirs_pattern($1_usertype,user_tmp_t,user_tmp_t)
++ manage_files_pattern($1_usertype,user_tmp_t,user_tmp_t)
++ manage_lnk_files_pattern($1_usertype,user_tmp_t,user_tmp_t)
++ manage_sock_files_pattern($1_usertype,user_tmp_t,user_tmp_t)
++ manage_fifo_files_pattern($1_usertype,user_tmp_t,user_tmp_t)
++ files_tmp_filetrans($1_usertype, user_tmp_t, { dir file lnk_file sock_file fifo_file })
')
#######################################
-@@ -396,7 +413,9 @@
+@@ -396,7 +376,13 @@
##
#
template(`userdom_exec_tmp_template',`
- exec_files_pattern($1_t,$1_tmp_t,$1_tmp_t)
++ gen_require(`
++ type user_tmp_t;
++ ')
++
+ tunable_policy(`allow_$1_exec_content', `
-+ exec_files_pattern($1_usertype,$1_tmp_t,$1_tmp_t)
++ exec_files_pattern($1_usertype, user_tmp_t, user_tmp_t)
+ ')
')
#######################################
-@@ -510,10 +529,6 @@
+@@ -510,10 +496,6 @@
##
#
template(`userdom_exec_generic_pgms_template',`
@@ -14020,7 +15172,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
corecmd_exec_bin($1_t)
')
-@@ -531,9 +546,6 @@
+@@ -531,9 +513,6 @@
##
#
template(`userdom_basic_networking_template',`
@@ -14030,7 +15182,18 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
allow $1_t self:tcp_socket create_stream_socket_perms;
allow $1_t self:udp_socket create_socket_perms;
-@@ -564,30 +576,29 @@
+@@ -548,10 +527,6 @@
+ corenet_udp_sendrecv_all_ports($1_t)
+ corenet_tcp_connect_all_ports($1_t)
+ corenet_sendrecv_all_client_packets($1_t)
+-
+- optional_policy(`
+- ipsec_match_default_spd($1_t)
+- ')
+ ')
+
+ #######################################
+@@ -568,30 +543,29 @@
#
template(`userdom_xwindows_client_template',`
gen_require(`
@@ -14077,7 +15240,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
#######################################
-@@ -724,7 +735,6 @@
+@@ -728,7 +702,6 @@
# for eject
storage_getattr_fixed_disk_dev($1_t)
@@ -14085,7 +15248,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
auth_read_login_records($1_t)
auth_search_pam_console_data($1_t)
auth_run_pam($1_t,$1_r,{ $1_tty_device_t $1_devpts_t })
-@@ -754,10 +764,6 @@
+@@ -758,10 +731,6 @@
dev_read_mouse($1_t)
')
@@ -14096,7 +15259,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
optional_policy(`
alsa_read_rw_config($1_t)
')
-@@ -779,20 +785,20 @@
+@@ -783,20 +752,20 @@
')
optional_policy(`
@@ -14122,7 +15285,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
')
-@@ -820,11 +826,18 @@
+@@ -824,11 +793,18 @@
mta_rw_spool($1_t)
')
@@ -14145,12 +15308,13 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
optional_policy(`
-@@ -838,12 +851,6 @@
+@@ -842,13 +818,6 @@
')
optional_policy(`
- tunable_policy(`allow_user_postgresql_connect',`
- postgresql_stream_connect($1_t)
+- postgresql_tcp_connect($1_t)
- ')
- ')
-
@@ -14158,7 +15322,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
resmgr_stream_connect($1_t)
')
-@@ -884,6 +891,8 @@
+@@ -889,6 +858,8 @@
##
#
template(`userdom_login_user_template', `
@@ -14167,7 +15331,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
userdom_base_user_template($1)
userdom_manage_home_template($1)
-@@ -912,26 +921,26 @@
+@@ -917,26 +888,26 @@
allow $1_t self:context contains;
@@ -14208,7 +15372,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
auth_dontaudit_write_login_records($1_t)
-@@ -939,43 +948,43 @@
+@@ -944,43 +915,43 @@
# The library functions always try to open read-write first,
# then fall back to read-only if it fails.
@@ -14270,7 +15434,36 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
')
-@@ -1065,14 +1074,14 @@
+@@ -1014,9 +985,6 @@
+ domain_interactive_fd($1_t)
+
+ typeattribute $1_devpts_t user_ptynode;
+- typeattribute $1_home_dir_t user_home_dir_type;
+- typeattribute $1_home_t user_home_type;
+- typeattribute $1_tmp_t user_tmpfile;
+ typeattribute $1_tty_device_t user_ttynode;
+
+ ##############################
+@@ -1025,12 +993,12 @@
+ #
+
+ # privileged home directory writers
+- manage_dirs_pattern(privhome,{ $1_home_dir_t $1_home_t },$1_home_t)
+- manage_files_pattern(privhome,{ $1_home_dir_t $1_home_t },$1_home_t)
+- manage_lnk_files_pattern(privhome,{ $1_home_dir_t $1_home_t },$1_home_t)
+- manage_sock_files_pattern(privhome,{ $1_home_dir_t $1_home_t },$1_home_t)
+- manage_fifo_files_pattern(privhome,{ $1_home_dir_t $1_home_t },$1_home_t)
+- filetrans_pattern(privhome,$1_home_dir_t,$1_home_t,{ dir file lnk_file sock_file fifo_file })
++ manage_dirs_pattern(privhome,{ user_home_dir_t user_home_t },user_home_t)
++ manage_files_pattern(privhome,{ user_home_dir_t user_home_t },user_home_t)
++ manage_lnk_files_pattern(privhome,{ user_home_dir_t user_home_t },user_home_t)
++ manage_sock_files_pattern(privhome,{ user_home_dir_t user_home_t },user_home_t)
++ manage_fifo_files_pattern(privhome,{ user_home_dir_t user_home_t },user_home_t)
++ filetrans_pattern(privhome,user_home_dir_t,user_home_t,{ dir file lnk_file sock_file fifo_file })
+
+ optional_policy(`
+ loadkeys_run($1_t,$1_r,$1_tty_device_t)
+@@ -1070,14 +1038,14 @@
#
authlogin_per_role_template($1, $1_t, $1_r)
@@ -14290,7 +15483,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
logging_dontaudit_send_audit_msgs($1_t)
# Need to to this just so screensaver will work. Should be moved to screensaver domain
-@@ -1080,19 +1089,18 @@
+@@ -1085,19 +1053,18 @@
selinux_get_enforce_mode($1_t)
optional_policy(`
@@ -14315,7 +15508,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
')
-@@ -1104,9 +1112,11 @@
+@@ -1109,9 +1076,11 @@
mono_per_role_template($1, $1_t, $1_r)
')
@@ -14330,7 +15523,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
#######################################
-@@ -1116,10 +1126,10 @@
+@@ -1121,10 +1090,10 @@
##
##
##
@@ -14345,7 +15538,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
## This template creates a user domain, types, and
## rules for the user's tty, pty, home directories,
## tmp, and tmpfs files.
-@@ -1182,12 +1192,11 @@
+@@ -1187,12 +1156,11 @@
# and may change other protocols
tunable_policy(`user_tcp_server',`
corenet_tcp_bind_all_nodes($1_t)
@@ -14360,7 +15553,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
# Run pppd in pppd_t by default for user
-@@ -1273,8 +1282,6 @@
+@@ -1278,8 +1246,6 @@
# Manipulate other users crontab.
allow $1_t self:passwd crontab;
@@ -14369,7 +15562,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
kernel_read_software_raid_state($1_t)
kernel_getattr_core_if($1_t)
kernel_getattr_message_if($1_t)
-@@ -1411,6 +1418,7 @@
+@@ -1416,6 +1382,7 @@
dev_relabel_all_dev_nodes($1)
files_create_boot_flag($1)
@@ -14377,7 +15570,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
# Necessary for managing /boot/efi
fs_manage_dos_files($1)
-@@ -1776,9 +1784,13 @@
+@@ -1781,10 +1748,14 @@
template(`userdom_user_home_content',`
gen_require(`
attribute $1_file_type;
@@ -14386,21 +15579,82 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
typeattribute $2 $1_file_type;
+- files_type($2)
+ typeattribute $2 user_home_type;
+ typeattribute $2 home_type;
- files_type($2)
++ files_poly_member($2)
')
-@@ -2028,10 +2040,46 @@
+ ########################################
+@@ -1880,11 +1851,11 @@
+ #
+ template(`userdom_search_user_home_dirs',`
+ gen_require(`
+- type $1_home_dir_t;
++ type user_home_dir_t;
+ ')
+
+ files_search_home($2)
+- allow $2 $1_home_dir_t:dir search_dir_perms;
++ allow $2 user_home_dir_t:dir search_dir_perms;
+ ')
+
+ ########################################
+@@ -1914,11 +1885,11 @@
+ #
+ template(`userdom_list_user_home_dirs',`
+ gen_require(`
+- type $1_home_dir_t;
++ type user_home_dir_t;
+ ')
+
+ files_search_home($2)
+- allow $2 $1_home_dir_t:dir list_dir_perms;
++ allow $2 user_home_dir_t:dir list_dir_perms;
+ ')
+
+ ########################################
+@@ -1962,12 +1933,12 @@
+ #
+ template(`userdom_user_home_domtrans',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+ files_search_home($2)
+- allow $2 $1_home_dir_t:dir search_dir_perms;
+- domain_auto_trans($2,$1_home_t,$3)
++ allow $2 user_home_dir_t:dir search_dir_perms;
++ domain_auto_trans($2,user_home_t,$3)
+ ')
+
+ ########################################
+@@ -1997,10 +1968,10 @@
+ #
+ template(`userdom_dontaudit_list_user_home_dirs',`
+ gen_require(`
+- type $1_home_dir_t;
++ type user_home_dir_t;
+ ')
+
+- dontaudit $2 $1_home_dir_t:dir list_dir_perms;
++ dontaudit $2 user_home_dir_t:dir list_dir_perms;
+ ')
+
+ ########################################
+@@ -2032,11 +2003,47 @@
+ #
template(`userdom_manage_user_home_content_dirs',`
gen_require(`
- type $1_home_dir_t, $1_home_t;
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ attribute user_home_type;
')
files_search_home($2)
- manage_dirs_pattern($2,{ $1_home_dir_t $1_home_t },$1_home_t)
-+ manage_dirs_pattern($2,{ $1_home_dir_t user_home_type },$1_home_t)
++ manage_dirs_pattern($2,{ user_home_dir_t user_home_type },user_home_t)
+')
+
+########################################
@@ -14432,17 +15686,324 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
+#
+template(`userdom_dontaudit_create_user_home_content_files',`
+ gen_require(`
-+ type $1_home_dir_t;
++ type user_home_dir_t;
+ ')
+
-+ dontaudit $2 $1_home_dir_t:file create;
++ dontaudit $2 user_home_dir_t:file create;
')
########################################
-@@ -2841,6 +2889,44 @@
+@@ -2068,10 +2075,10 @@
+ #
+ template(`userdom_dontaudit_setattr_user_home_content_files',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+- dontaudit $2 $1_home_t:file setattr;
++ dontaudit $2 user_home_t:file setattr;
+ ')
########################################
- ##
+@@ -2101,11 +2108,11 @@
+ #
+ template(`userdom_read_user_home_content_files',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+ files_search_home($2)
+- read_files_pattern($2,{ $1_home_dir_t $1_home_t },$1_home_t)
++ read_files_pattern($2,{ user_home_dir_t user_home_t },user_home_t)
+ ')
+
+ ########################################
+@@ -2135,11 +2142,11 @@
+ #
+ template(`userdom_dontaudit_read_user_home_content_files',`
+ gen_require(`
+- type $1_home_t;
++ type user_home_t;
+ ')
+
+- dontaudit $2 $1_home_t:dir list_dir_perms;
+- dontaudit $2 $1_home_t:file read_file_perms;
++ dontaudit $2 user_home_t:dir list_dir_perms;
++ dontaudit $2 user_home_t:file read_file_perms;
+ ')
+
+ ########################################
+@@ -2169,10 +2176,10 @@
+ #
+ template(`userdom_dontaudit_write_user_home_content_files',`
+ gen_require(`
+- type $1_home_t;
++ type user_home_t;
+ ')
+
+- dontaudit $2 $1_home_t:file write;
++ dontaudit $2 user_home_t:file write;
+ ')
+
+ ########################################
+@@ -2202,11 +2209,11 @@
+ #
+ template(`userdom_read_user_home_content_symlinks',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+ files_search_home($2)
+- read_lnk_files_pattern($2,{ $1_home_dir_t $1_home_t },$1_home_t)
++ read_lnk_files_pattern($2,{ user_home_dir_t user_home_t },user_home_t)
+ ')
+
+ ########################################
+@@ -2236,11 +2243,11 @@
+ #
+ template(`userdom_exec_user_home_content_files',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+ files_search_home($2)
+- exec_files_pattern($2,{ $1_home_dir_t $1_home_t },$1_home_t)
++ exec_files_pattern($2,{ user_home_dir_t user_home_t },user_home_t)
+ ')
+
+ ########################################
+@@ -2270,10 +2277,10 @@
+ #
+ template(`userdom_dontaudit_exec_user_home_content_files',`
+ gen_require(`
+- type $1_home_t;
++ type user_home_t;
+ ')
+
+- dontaudit $2 $1_home_t:file execute;
++ dontaudit $2 user_home_t:file execute;
+ ')
+
+ ########################################
+@@ -2305,12 +2312,12 @@
+ #
+ template(`userdom_manage_user_home_content_files',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+ files_search_home($2)
+- allow $2 $1_home_dir_t:dir search_dir_perms;
+- manage_files_pattern($2,$1_home_t,$1_home_t)
++ allow $2 user_home_dir_t:dir search_dir_perms;
++ manage_files_pattern($2,user_home_t,user_home_t)
+ ')
+
+ ########################################
+@@ -2342,10 +2349,10 @@
+ #
+ template(`userdom_dontaudit_manage_user_home_content_dirs',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+- dontaudit $2 $1_home_t:dir manage_dir_perms;
++ dontaudit $2 user_home_t:dir manage_dir_perms;
+ ')
+
+ ########################################
+@@ -2377,12 +2384,12 @@
+ #
+ template(`userdom_manage_user_home_content_symlinks',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+ files_search_home($2)
+- allow $2 $1_home_dir_t:dir search_dir_perms;
+- manage_lnk_files_pattern($2,$1_home_t,$1_home_t)
++ allow $2 user_home_dir_t:dir search_dir_perms;
++ manage_lnk_files_pattern($2,user_home_t,user_home_t)
+ ')
+
+ ########################################
+@@ -2414,12 +2421,12 @@
+ #
+ template(`userdom_manage_user_home_content_pipes',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+ files_search_home($2)
+- allow $2 $1_home_dir_t:dir search_dir_perms;
+- manage_fifo_files_pattern($2,$1_home_t,$1_home_t)
++ allow $2 user_home_dir_t:dir search_dir_perms;
++ manage_fifo_files_pattern($2,user_home_t,user_home_t)
+ ')
+
+ ########################################
+@@ -2451,12 +2458,12 @@
+ #
+ template(`userdom_manage_user_home_content_sockets',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+ files_search_home($2)
+- allow $2 $1_home_dir_t:dir search_dir_perms;
+- manage_sock_files_pattern($2,$1_home_t,$1_home_t)
++ allow $2 user_home_dir_t:dir search_dir_perms;
++ manage_sock_files_pattern($2,user_home_t,user_home_t)
+ ')
+
+ ########################################
+@@ -2501,11 +2508,11 @@
+ #
+ template(`userdom_user_home_dir_filetrans',`
+ gen_require(`
+- type $1_home_dir_t;
++ type user_home_dir_t;
+ ')
+
+ files_search_home($2)
+- filetrans_pattern($2,$1_home_dir_t,$3,$4)
++ filetrans_pattern($2,user_home_dir_t,$3,$4)
+ ')
+
+ ########################################
+@@ -2550,11 +2557,11 @@
+ #
+ template(`userdom_user_home_content_filetrans',`
+ gen_require(`
+- type $1_home_t;
++ type user_home_t;
+ ')
+
+ files_search_home($2)
+- filetrans_pattern($2,$1_home_t,$3,$4)
++ filetrans_pattern($2,user_home_t,$3,$4)
+ ')
+
+ ########################################
+@@ -2594,11 +2601,11 @@
+ #
+ template(`userdom_user_home_dir_filetrans_user_home_content',`
+ gen_require(`
+- type $1_home_dir_t, $1_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+ files_search_home($2)
+- filetrans_pattern($2,$1_home_dir_t,$1_home_t,$3)
++ filetrans_pattern($2,user_home_dir_t,user_home_t,$3)
+ ')
+
+ ########################################
+@@ -2628,11 +2635,11 @@
+ #
+ template(`userdom_write_user_tmp_sockets',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+ files_search_tmp($2)
+- allow $2 $1_tmp_t:sock_file write;
++ allow $2 user_tmp_t:sock_file write;
+ ')
+
+ ########################################
+@@ -2662,11 +2669,11 @@
+ #
+ template(`userdom_list_user_tmp',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+ files_search_tmp($2)
+- allow $2 $1_tmp_t:dir list_dir_perms;
++ allow $2 user_tmp_t:dir list_dir_perms;
+ ')
+
+ ########################################
+@@ -2698,10 +2705,10 @@
+ #
+ template(`userdom_dontaudit_list_user_tmp',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+- dontaudit $2 $1_tmp_t:dir list_dir_perms;
++ dontaudit $2 user_tmp_t:dir list_dir_perms;
+ ')
+
+ ########################################
+@@ -2733,10 +2740,10 @@
+ #
+ template(`userdom_dontaudit_manage_user_tmp_dirs',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+- dontaudit $2 $1_tmp_t:dir manage_dir_perms;
++ dontaudit $2 user_tmp_t:dir manage_dir_perms;
+ ')
+
+ ########################################
+@@ -2766,12 +2773,12 @@
+ #
+ template(`userdom_read_user_tmp_files',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+ files_search_tmp($2)
+- allow $2 $1_tmp_t:dir list_dir_perms;
+- read_files_pattern($2,$1_tmp_t,$1_tmp_t)
++ allow $2 user_tmp_t:dir list_dir_perms;
++ read_files_pattern($2,user_tmp_t,user_tmp_t)
+ ')
+
+ ########################################
+@@ -2803,10 +2810,10 @@
+ #
+ template(`userdom_dontaudit_read_user_tmp_files',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+- dontaudit $2 $1_tmp_t:file read_file_perms;
++ dontaudit $2 user_tmp_t:file read_file_perms;
+ ')
+
+ ########################################
+@@ -2838,10 +2845,48 @@
+ #
+ template(`userdom_dontaudit_append_user_tmp_files',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
++ ')
++
++ dontaudit $2 user_tmp_t:file append;
++')
++
++########################################
++##
+## unlink all unprivileged users files in /tmp
+##
+##
@@ -14454,8 +16015,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
+interface(`userdom_unlink_unpriv_users_tmp_files',`
+ gen_require(`
+ attribute user_tmpfile;
-+ ')
-+
+ ')
+
+- dontaudit $2 $1_tmp_t:file append;
+ files_delete_tmp_dir_entry($1)
+ allow $1 user_tmpfile:file unlink;
+')
@@ -14477,14 +16039,375 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
+ ')
+
+ stream_connect_pattern($1, user_tmpfile, user_tmpfile, userdomain)
-+')
-+
-+########################################
-+##
- ## Read and write user temporary files.
- ##
- ##
-@@ -4743,11 +4829,29 @@
+ ')
+
+ ########################################
+@@ -2871,12 +2916,12 @@
+ #
+ template(`userdom_rw_user_tmp_files',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+ files_search_tmp($2)
+- allow $2 $1_tmp_t:dir list_dir_perms;
+- rw_files_pattern($2,$1_tmp_t,$1_tmp_t)
++ allow $2 user_tmp_t:dir list_dir_perms;
++ rw_files_pattern($2,user_tmp_t,user_tmp_t)
+ ')
+
+ ########################################
+@@ -2908,10 +2953,10 @@
+ #
+ template(`userdom_dontaudit_manage_user_tmp_files',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+- dontaudit $2 $1_tmp_t:file manage_file_perms;
++ dontaudit $2 user_tmp_t:file manage_file_perms;
+ ')
+
+ ########################################
+@@ -2943,12 +2988,12 @@
+ #
+ template(`userdom_read_user_tmp_symlinks',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+ files_search_tmp($2)
+- allow $2 $1_tmp_t:dir list_dir_perms;
+- read_lnk_files_pattern($2,$1_tmp_t,$1_tmp_t)
++ allow $2 user_tmp_t:dir list_dir_perms;
++ read_lnk_files_pattern($2,user_tmp_t,user_tmp_t)
+ ')
+
+ ########################################
+@@ -2980,11 +3025,11 @@
+ #
+ template(`userdom_manage_user_tmp_dirs',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+ files_search_tmp($2)
+- manage_dirs_pattern($2,$1_tmp_t,$1_tmp_t)
++ manage_dirs_pattern($2,user_tmp_t,user_tmp_t)
+ ')
+
+ ########################################
+@@ -3016,11 +3061,11 @@
+ #
+ template(`userdom_manage_user_tmp_files',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+ files_search_tmp($2)
+- manage_files_pattern($2,$1_tmp_t,$1_tmp_t)
++ manage_files_pattern($2,user_tmp_t,user_tmp_t)
+ ')
+
+ ########################################
+@@ -3052,11 +3097,11 @@
+ #
+ template(`userdom_manage_user_tmp_symlinks',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+ files_search_tmp($2)
+- manage_lnk_files_pattern($2,$1_tmp_t,$1_tmp_t)
++ manage_lnk_files_pattern($2,user_tmp_t,user_tmp_t)
+ ')
+
+ ########################################
+@@ -3088,11 +3133,11 @@
+ #
+ template(`userdom_manage_user_tmp_pipes',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+ files_search_tmp($2)
+- manage_fifo_files_pattern($2,$1_tmp_t,$1_tmp_t)
++ manage_fifo_files_pattern($2,user_tmp_t,user_tmp_t)
+ ')
+
+ ########################################
+@@ -3124,11 +3169,11 @@
+ #
+ template(`userdom_manage_user_tmp_sockets',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+ files_search_tmp($2)
+- manage_sock_files_pattern($2,$1_tmp_t,$1_tmp_t)
++ manage_sock_files_pattern($2,user_tmp_t,user_tmp_t)
+ ')
+
+ ########################################
+@@ -3173,10 +3218,10 @@
+ #
+ template(`userdom_user_tmp_filetrans',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+- filetrans_pattern($2,$1_tmp_t,$3,$4)
++ filetrans_pattern($2,user_tmp_t,$3,$4)
+ files_search_tmp($2)
+ ')
+
+@@ -3217,10 +3262,10 @@
+ #
+ template(`userdom_tmp_filetrans_user_tmp',`
+ gen_require(`
+- type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
+- files_tmp_filetrans($2,$1_tmp_t,$3)
++ files_tmp_filetrans($2,user_tmp_t,$3)
+ ')
+
+ ########################################
+@@ -4225,11 +4270,11 @@
+ #
+ interface(`userdom_search_staff_home_dirs',`
+ gen_require(`
+- type staff_home_dir_t;
++ type user_home_dir_t;
+ ')
+
+ files_search_home($1)
+- allow $1 staff_home_dir_t:dir search_dir_perms;
++ allow $1 user_home_dir_t:dir search_dir_perms;
+ ')
+
+ ########################################
+@@ -4245,10 +4290,10 @@
+ #
+ interface(`userdom_dontaudit_search_staff_home_dirs',`
+ gen_require(`
+- type staff_home_dir_t;
++ type user_home_dir_t;
+ ')
+
+- dontaudit $1 staff_home_dir_t:dir search_dir_perms;
++ dontaudit $1 user_home_dir_t:dir search_dir_perms;
+ ')
+
+ ########################################
+@@ -4264,11 +4309,11 @@
+ #
+ interface(`userdom_manage_staff_home_dirs',`
+ gen_require(`
+- type staff_home_dir_t;
++ type user_home_dir_t;
+ ')
+
+ files_search_home($1)
+- allow $1 staff_home_dir_t:dir manage_dir_perms;
++ allow $1 user_home_dir_t:dir manage_dir_perms;
+ ')
+
+ ########################################
+@@ -4283,11 +4328,11 @@
+ #
+ interface(`userdom_relabelto_staff_home_dirs',`
+ gen_require(`
+- type staff_home_dir_t;
++ type user_home_dir_t;
+ ')
+
+ files_search_home($1)
+- allow $1 staff_home_dir_t:dir relabelto;
++ allow $1 user_home_dir_t:dir relabelto;
+ ')
+
+ ########################################
+@@ -4303,10 +4348,10 @@
+ #
+ interface(`userdom_dontaudit_append_staff_home_content_files',`
+ gen_require(`
+- type staff_home_t;
++ type user_home_t;
+ ')
+
+- dontaudit $1 staff_home_t:file append;
++ dontaudit $1 user_home_t:file append;
+ ')
+
+ ########################################
+@@ -4321,13 +4366,13 @@
+ #
+ interface(`userdom_read_staff_home_content_files',`
+ gen_require(`
+- type staff_home_dir_t, staff_home_t;
++ type user_home_dir_t, user_home_t;
+ ')
+
+ files_search_home($1)
+- allow $1 { staff_home_dir_t staff_home_t }:dir list_dir_perms;
+- read_files_pattern($1,{ staff_home_dir_t staff_home_t },staff_home_t)
+- read_lnk_files_pattern($1,{ staff_home_dir_t staff_home_t },staff_home_t)
++ allow $1 { user_home_dir_t user_home_t }:dir list_dir_perms;
++ read_files_pattern($1,{ user_home_dir_t user_home_t },user_home_t)
++ read_lnk_files_pattern($1,{ user_home_dir_t user_home_t },user_home_t)
+ ')
+
+ ########################################
+@@ -4525,10 +4570,10 @@
+ #
+ interface(`userdom_getattr_sysadm_home_dirs',`
+ gen_require(`
+- type sysadm_home_dir_t;
++ type admin_home_t;
+ ')
+
+- allow $1 sysadm_home_dir_t:dir getattr;
++ allow $1 admin_home_t:dir getattr;
+ ')
+
+ ########################################
+@@ -4545,10 +4590,10 @@
+ #
+ interface(`userdom_dontaudit_getattr_sysadm_home_dirs',`
+ gen_require(`
+- type sysadm_home_dir_t;
++ type admin_home_t;
+ ')
+
+- dontaudit $1 sysadm_home_dir_t:dir getattr;
++ dontaudit $1 admin_home_t:dir getattr;
+ ')
+
+ ########################################
+@@ -4563,10 +4608,10 @@
+ #
+ interface(`userdom_search_sysadm_home_dirs',`
+ gen_require(`
+- type sysadm_home_dir_t;
++ type admin_home_t;
+ ')
+
+- allow $1 sysadm_home_dir_t:dir search_dir_perms;
++ allow $1 admin_home_t:dir search_dir_perms;
+ ')
+
+ ########################################
+@@ -4582,10 +4627,10 @@
+ #
+ interface(`userdom_dontaudit_search_sysadm_home_dirs',`
+ gen_require(`
+- type sysadm_home_dir_t;
++ type admin_home_t;
+ ')
+
+- dontaudit $1 sysadm_home_dir_t:dir search_dir_perms;
++ dontaudit $1 admin_home_t:dir search_dir_perms;
+ ')
+
+ ########################################
+@@ -4600,10 +4645,10 @@
+ #
+ interface(`userdom_list_sysadm_home_dirs',`
+ gen_require(`
+- type sysadm_home_dir_t;
++ type admin_home_t;
+ ')
+
+- allow $1 sysadm_home_dir_t:dir list_dir_perms;
++ allow $1 admin_home_t:dir list_dir_perms;
+ ')
+
+ ########################################
+@@ -4619,10 +4664,10 @@
+ #
+ interface(`userdom_dontaudit_list_sysadm_home_dirs',`
+ gen_require(`
+- type sysadm_home_dir_t;
++ type admin_home_t;
+ ')
+
+- dontaudit $1 sysadm_home_dir_t:dir list_dir_perms;
++ dontaudit $1 admin_home_t:dir list_dir_perms;
+ ')
+
+ ########################################
+@@ -4638,12 +4683,11 @@
+ #
+ interface(`userdom_dontaudit_read_sysadm_home_content_files',`
+ gen_require(`
+- type sysadm_home_dir_t, sysadm_home_t;
++ type admin_home_t;
+ ')
+
+- dontaudit $1 sysadm_home_dir_t:dir search_dir_perms;
+- dontaudit $1 sysadm_home_t:dir search_dir_perms;
+- dontaudit $1 sysadm_home_t:file read_file_perms;
++ dontaudit $1 admin_home_t:dir search_dir_perms;
++ dontaudit $1 admin_home_t:file read_file_perms;
+ ')
+
+ ########################################
+@@ -4670,10 +4714,10 @@
+ #
+ interface(`userdom_sysadm_home_dir_filetrans',`
+ gen_require(`
+- type sysadm_home_dir_t;
++ type admin_home_t;
+ ')
+
+- filetrans_pattern($1,sysadm_home_dir_t,$2,$3)
++ filetrans_pattern($1,admin_home_t,$2,$3)
+ ')
+
+ ########################################
+@@ -4688,10 +4732,10 @@
+ #
+ interface(`userdom_search_sysadm_home_content_dirs',`
+ gen_require(`
+- type sysadm_home_dir_t, sysadm_home_t;
++ type admin_home_t
+ ')
+
+- allow $1 { sysadm_home_dir_t sysadm_home_t }:dir search_dir_perms;
++ allow $1 admin_home_t:dir search_dir_perms;
+ ')
+
+ ########################################
+@@ -4706,13 +4750,13 @@
+ #
+ interface(`userdom_read_sysadm_home_content_files',`
+ gen_require(`
+- type sysadm_home_dir_t, sysadm_home_t;
++ type admin_home_t;
+ ')
+
+ files_search_home($1)
+- allow $1 { sysadm_home_dir_t sysadm_home_t }:dir list_dir_perms;
+- read_files_pattern($1, { sysadm_home_dir_t sysadm_home_t }, sysadm_home_t)
+- read_lnk_files_pattern($1, { sysadm_home_dir_t sysadm_home_t }, sysadm_home_t)
++ allow $1 admin_home_t:dir list_dir_perms;
++ read_files_pattern($1, admin_home_t, admin_home_t)
++ read_lnk_files_pattern($1, admin_home_t, admin_home_t)
+ ')
+
+ ########################################
+@@ -4748,11 +4792,29 @@
#
interface(`userdom_search_all_users_home_dirs',`
gen_require(`
@@ -14515,7 +16438,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
########################################
-@@ -4767,6 +4871,14 @@
+@@ -4772,6 +4834,14 @@
files_list_home($1)
allow $1 home_dir_type:dir list_dir_perms;
@@ -14530,7 +16453,16 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
')
########################################
-@@ -5293,6 +5405,28 @@
+@@ -5109,7 +5179,7 @@
+ #
+ interface(`userdom_relabelto_generic_user_home_dirs',`
+ gen_require(`
+- type staff_home_dir_t;
++ type user_home_dir_t;
+ ')
+
+ files_search_home($1)
+@@ -5298,6 +5368,28 @@
########################################
##
@@ -14559,7 +16491,32 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
## Create, read, write, and delete directories in
## unprivileged users home directories.
##
-@@ -5663,6 +5797,24 @@
+@@ -5503,6 +5595,24 @@
+
+ ########################################
+ ##
++## Write all unprivileged users files in /tmp
++##
++##
++##
++## Domain allowed access.
++##
++##
++#
++interface(`userdom_manage_unpriv_users_tmp_files',`
++ gen_require(`
++ type user_tmp_t;
++ ')
++
++ manage_files_pattern($1, user_tmp_t, user_tmp_t)
++')
++
++########################################
++##
+ ## Read and write unprivileged user ttys.
+ ##
+ ##
+@@ -5668,6 +5778,24 @@
########################################
##
@@ -14584,7 +16541,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
## Send a dbus message to all user domains.
##
##
-@@ -5693,3 +5845,277 @@
+@@ -5698,3 +5826,277 @@
interface(`userdom_unconfined',`
refpolicywarn(`$0($*) has been deprecated.')
')
@@ -14622,10 +16579,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
+#
+interface(`userdom_dontaudit_write_sysadm_home_dirs',`
+ gen_require(`
-+ type sysadm_home_dir_t;
++ type admin_home_t;
+ ')
+
-+ dontaudit $1 sysadm_home_dir_t:dir write;
++ dontaudit $1 admin_home_t:dir write;
+')
+
+########################################
@@ -14856,15 +16813,15 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
+#
+template(`userdom_transition_user_tmp',`
+ gen_require(`
-+ type $1_tmp_t;
++ type user_tmp_t;
+ ')
+
-+ files_tmp_filetrans($2,$1_tmp_t, $3)
++ files_tmp_filetrans($2, user_tmp_t, $3)
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdomain.te serefpolicy-3.1.2/policy/modules/system/userdomain.te
---- nsaserefpolicy/policy/modules/system/userdomain.te 2007-11-14 08:17:58.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/userdomain.te 2007-11-26 16:40:13.000000000 -0500
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdomain.te serefpolicy-3.2.1/policy/modules/system/userdomain.te
+--- nsaserefpolicy/policy/modules/system/userdomain.te 2007-11-29 13:29:35.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/userdomain.te 2007-11-30 11:23:56.000000000 -0500
@@ -17,20 +17,13 @@
##
@@ -14897,7 +16854,51 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
# The privhome attribute identifies every domain that can create files under
# regular user home directories in the regular context (IE act on behalf of
# a user in writing regular files)
-@@ -154,6 +150,11 @@
+@@ -101,6 +97,43 @@
+ attribute untrusted_content_type;
+ attribute untrusted_content_tmp_type;
+
++type admin_home_t, home_type;
++files_type(admin_home_t)
++files_associate_tmp(admin_home_t)
++fs_associate_tmpfs(admin_home_t)
++files_mountpoint(admin_home_t)
++
++type user_home_t, user_file_type, user_home_type, home_type;
++files_type(user_home_t)
++files_associate_tmp(user_home_t)
++fs_associate_tmpfs(user_home_t)
++files_mountpoint(user_home_t)
++files_poly_parent(user_home_t)
++files_poly_member(user_home_t)
++
++# type of home directory
++type user_home_dir_t, home_dir_type, user_home_dir_type, home_type;
++files_type(user_home_dir_t)
++files_mountpoint(user_home_dir_t)
++files_associate_tmp(user_home_dir_t)
++fs_associate_tmpfs(user_home_dir_t)
++files_poly(user_home_dir_t)
++files_poly_member(user_home_dir_t)
++files_poly_parent(user_home_dir_t)
++
++type user_tmp_t, user_file_type, user_tmpfile;
++files_tmp_file(user_tmp_t)
++
++##############################
++#
++# User home directory file rules
++#
++
++allow user_file_type user_home_t:filesystem associate;
++
++# Rules used to associate a homedir as a mountpoint
++allow user_home_t self:filesystem associate;
++
+ ########################################
+ #
+ # Local policy
+@@ -154,6 +187,11 @@
init_exec(sysadm_t)
@@ -14909,7 +16910,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
# Following for sending reboot and wall messages
userdom_use_unpriv_users_ptys(sysadm_t)
userdom_use_unpriv_users_ttys(sysadm_t)
-@@ -224,6 +225,10 @@
+@@ -224,6 +262,10 @@
')
optional_policy(`
@@ -14920,7 +16921,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
apache_run_helper(sysadm_t, sysadm_r, admin_terminal)
#apache_run_all_scripts(sysadm_t, sysadm_r)
#apache_domtrans_sys_script(sysadm_t)
-@@ -279,14 +284,6 @@
+@@ -279,14 +321,6 @@
')
optional_policy(`
@@ -14935,7 +16936,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
cron_admin_template(sysadm, sysadm_t, sysadm_r)
')
-@@ -352,6 +349,10 @@
+@@ -352,6 +386,10 @@
')
optional_policy(`
@@ -14946,7 +16947,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
lvm_run(sysadm_t, sysadm_r, admin_terminal)
')
-@@ -387,6 +388,10 @@
+@@ -387,6 +425,10 @@
')
optional_policy(`
@@ -14957,7 +16958,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
netutils_run(sysadm_t, sysadm_r, admin_terminal)
netutils_run_ping(sysadm_t, sysadm_r, admin_terminal)
netutils_run_traceroute(sysadm_t, sysadm_r, admin_terminal)
-@@ -436,15 +441,20 @@
+@@ -436,15 +478,20 @@
optional_policy(`
samba_run_net(sysadm_t, sysadm_r, admin_terminal)
@@ -14978,7 +16979,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
', `
userdom_security_admin_template(sysadm_t, sysadm_r, admin_terminal)
')
-@@ -487,3 +497,15 @@
+@@ -487,3 +534,15 @@
optional_policy(`
yam_run(sysadm_t, sysadm_r, admin_terminal)
')
@@ -14994,14 +16995,14 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/userdo
+ netutils_run_traceroute_cond(staff_t,staff_r,{ staff_tty_device_t staff_devpts_t })
+')
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/virt.fc serefpolicy-3.1.2/policy/modules/system/virt.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/virt.fc serefpolicy-3.2.1/policy/modules/system/virt.fc
--- nsaserefpolicy/policy/modules/system/virt.fc 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/virt.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/virt.fc 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+/var/lib/libvirt(/.*)? gen_context(system_u:object_r:virt_var_lib_t,s0)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/virt.if serefpolicy-3.1.2/policy/modules/system/virt.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/virt.if serefpolicy-3.2.1/policy/modules/system/virt.if
--- nsaserefpolicy/policy/modules/system/virt.if 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/virt.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/virt.if 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,78 @@
+## Virtualization
+
@@ -15081,16 +17082,16 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/virt.i
+ files_list_var_lib($1)
+ manage_files_pattern($1,virt_var_lib_t,virt_var_lib_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/virt.te serefpolicy-3.1.2/policy/modules/system/virt.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/virt.te serefpolicy-3.2.1/policy/modules/system/virt.te
--- nsaserefpolicy/policy/modules/system/virt.te 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/system/virt.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/virt.te 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,3 @@
+# var/lib files
+type virt_var_lib_t;
+files_type(virt_var_lib_t)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/xen.if serefpolicy-3.1.2/policy/modules/system/xen.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/xen.if serefpolicy-3.2.1/policy/modules/system/xen.if
--- nsaserefpolicy/policy/modules/system/xen.if 2007-06-21 09:32:04.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/xen.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/xen.if 2007-11-30 11:23:56.000000000 -0500
@@ -191,3 +191,24 @@
domtrans_pattern($1,xm_exec_t,xm_t)
@@ -15116,9 +17117,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/xen.if
+ allow $1 xend_var_lib_t:dir search_dir_perms;
+ rw_files_pattern($1,xen_image_t,xen_image_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/xen.te serefpolicy-3.1.2/policy/modules/system/xen.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/xen.te serefpolicy-3.2.1/policy/modules/system/xen.te
--- nsaserefpolicy/policy/modules/system/xen.te 2007-10-12 08:56:08.000000000 -0400
-+++ serefpolicy-3.1.2/policy/modules/system/xen.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/system/xen.te 2007-11-30 11:23:56.000000000 -0500
@@ -6,6 +6,13 @@
# Declarations
#
@@ -15303,37 +17304,37 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/xen.te
+ fs_read_nfs_symlinks(xend_t)
+ fstools_manage_nfs(xend_t)
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/guest.fc serefpolicy-3.1.2/policy/modules/users/guest.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/guest.fc serefpolicy-3.2.1/policy/modules/users/guest.fc
--- nsaserefpolicy/policy/modules/users/guest.fc 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/guest.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/guest.fc 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+# No guest file contexts.
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/guest.if serefpolicy-3.1.2/policy/modules/users/guest.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/guest.if serefpolicy-3.2.1/policy/modules/users/guest.if
--- nsaserefpolicy/policy/modules/users/guest.if 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/guest.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/guest.if 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+## Policy for guest user
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/guest.te serefpolicy-3.1.2/policy/modules/users/guest.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/guest.te serefpolicy-3.2.1/policy/modules/users/guest.te
--- nsaserefpolicy/policy/modules/users/guest.te 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/guest.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/guest.te 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,4 @@
+policy_module(guest,1.0.1)
+userdom_restricted_user_template(guest)
+userdom_restricted_user_template(gadmin)
+
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/logadm.fc serefpolicy-3.1.2/policy/modules/users/logadm.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/logadm.fc serefpolicy-3.2.1/policy/modules/users/logadm.fc
--- nsaserefpolicy/policy/modules/users/logadm.fc 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/logadm.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/logadm.fc 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+# No logadm file contexts.
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/logadm.if serefpolicy-3.1.2/policy/modules/users/logadm.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/logadm.if serefpolicy-3.2.1/policy/modules/users/logadm.if
--- nsaserefpolicy/policy/modules/users/logadm.if 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/logadm.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/logadm.if 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+## Policy for logadm user
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/logadm.te serefpolicy-3.1.2/policy/modules/users/logadm.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/logadm.te serefpolicy-3.2.1/policy/modules/users/logadm.te
--- nsaserefpolicy/policy/modules/users/logadm.te 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/logadm.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/logadm.te 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,11 @@
+policy_module(logadm,1.0.0)
+
@@ -15346,24 +17347,24 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/logadm.
+allow logadm_t self:capability { dac_override dac_read_search kill sys_ptrace sys_nice };
+
+logging_admin(logadm_t, logadm_r, { logadm_devpts_t logadm_tty_device_t })
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/metadata.xml serefpolicy-3.1.2/policy/modules/users/metadata.xml
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/metadata.xml serefpolicy-3.2.1/policy/modules/users/metadata.xml
--- nsaserefpolicy/policy/modules/users/metadata.xml 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/metadata.xml 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/metadata.xml 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+Policy modules for users
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/webadm.fc serefpolicy-3.1.2/policy/modules/users/webadm.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/webadm.fc serefpolicy-3.2.1/policy/modules/users/webadm.fc
--- nsaserefpolicy/policy/modules/users/webadm.fc 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/webadm.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/webadm.fc 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+# No webadm file contexts.
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/webadm.if serefpolicy-3.1.2/policy/modules/users/webadm.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/webadm.if serefpolicy-3.2.1/policy/modules/users/webadm.if
--- nsaserefpolicy/policy/modules/users/webadm.if 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/webadm.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/webadm.if 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+## Policy for webadm user
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/webadm.te serefpolicy-3.1.2/policy/modules/users/webadm.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/webadm.te serefpolicy-3.2.1/policy/modules/users/webadm.te
--- nsaserefpolicy/policy/modules/users/webadm.te 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/webadm.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/webadm.te 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,42 @@
+policy_module(webadm,1.0.0)
+
@@ -15407,19 +17408,19 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/webadm.
+')
+allow gadmin_t webadm_t:process transition;
+allow webadm_t gadmin_t:dir getattr;
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/xguest.fc serefpolicy-3.1.2/policy/modules/users/xguest.fc
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/xguest.fc serefpolicy-3.2.1/policy/modules/users/xguest.fc
--- nsaserefpolicy/policy/modules/users/xguest.fc 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/xguest.fc 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/xguest.fc 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+# No xguest file contexts.
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/xguest.if serefpolicy-3.1.2/policy/modules/users/xguest.if
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/xguest.if serefpolicy-3.2.1/policy/modules/users/xguest.if
--- nsaserefpolicy/policy/modules/users/xguest.if 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/xguest.if 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/xguest.if 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1 @@
+## Policy for xguest user
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/xguest.te serefpolicy-3.1.2/policy/modules/users/xguest.te
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/xguest.te serefpolicy-3.2.1/policy/modules/users/xguest.te
--- nsaserefpolicy/policy/modules/users/xguest.te 1969-12-31 19:00:00.000000000 -0500
-+++ serefpolicy-3.1.2/policy/modules/users/xguest.te 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/modules/users/xguest.te 2007-11-30 11:23:56.000000000 -0500
@@ -0,0 +1,55 @@
+policy_module(xguest,1.0.1)
+
@@ -15476,9 +17477,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/users/xguest.
+ bluetooth_dbus_chat(xguest_t)
+ ')
+')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/support/obj_perm_sets.spt serefpolicy-3.1.2/policy/support/obj_perm_sets.spt
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/support/obj_perm_sets.spt serefpolicy-3.2.1/policy/support/obj_perm_sets.spt
--- nsaserefpolicy/policy/support/obj_perm_sets.spt 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/support/obj_perm_sets.spt 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/support/obj_perm_sets.spt 2007-11-30 11:23:56.000000000 -0500
@@ -204,7 +204,7 @@
define(`getattr_file_perms',`{ getattr }')
define(`setattr_file_perms',`{ setattr }')
@@ -15502,9 +17503,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/support/obj_perm_sets
+define(`all_association_perms', `{ sendto recvfrom setcontext polmatch } ')
+
+define(`manage_key_perms', `{ create link read search setattr view write } ')
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/users serefpolicy-3.1.2/policy/users
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/users serefpolicy-3.2.1/policy/users
--- nsaserefpolicy/policy/users 2007-10-12 08:56:09.000000000 -0400
-+++ serefpolicy-3.1.2/policy/users 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/policy/users 2007-11-30 11:23:56.000000000 -0500
@@ -16,7 +16,7 @@
# and a user process should never be assigned the system user
# identity.
@@ -15539,9 +17540,9 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/users serefpolicy-3.1
- gen_user(root, sysadm, sysadm_r staff_r ifdef(`enable_mls',`secadm_r auditadm_r'), s0, s0 - mls_systemhigh, mcs_allcats)
-')
+gen_user(root, sysadm, sysadm_r staff_r ifdef(`enable_mls',`secadm_r auditadm_r') system_r, s0, s0 - mls_systemhigh, mcs_allcats)
-diff --exclude-from=exclude -N -u -r nsaserefpolicy/Rules.monolithic serefpolicy-3.1.2/Rules.monolithic
+diff --exclude-from=exclude -N -u -r nsaserefpolicy/Rules.monolithic serefpolicy-3.2.1/Rules.monolithic
--- nsaserefpolicy/Rules.monolithic 2007-11-20 06:55:20.000000000 -0500
-+++ serefpolicy-3.1.2/Rules.monolithic 2007-11-26 16:40:13.000000000 -0500
++++ serefpolicy-3.2.1/Rules.monolithic 2007-11-30 11:23:56.000000000 -0500
@@ -96,7 +96,7 @@
#
# Load the binary policy
diff --git a/selinux-policy.spec b/selinux-policy.spec
index 5348872a..3a858631 100644
--- a/selinux-policy.spec
+++ b/selinux-policy.spec
@@ -16,12 +16,12 @@
%define CHECKPOLICYVER 2.0.3-1
Summary: SELinux policy configuration
Name: selinux-policy
-Version: 3.1.2
-Release: 2%{?dist}
+Version: 3.2.1
+Release: 1%{?dist}
License: GPLv2+
Group: System Environment/Base
Source: serefpolicy-%{version}.tgz
-patch: policy-20071114.patch
+patch: policy-20071130.patch
Source1: modules-targeted.conf
Source2: booleans-targeted.conf
Source3: Makefile.devel
@@ -41,7 +41,7 @@ Url: http://serefpolicy.sourceforge.net
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: noarch
BuildRequires: python gawk checkpolicy >= %{CHECKPOLICYVER} m4 policycoreutils >= %{POLICYCOREUTILSVER}
-Requires(pre): policycoreutils >= %{POLICYCOREUTILSVER} libsemanage >= 1.6.17-1
+Requires(pre): policycoreutils >= %{POLICYCOREUTILSVER} libsemanage >= 2.0.14-3
%description
SELinux Base package
@@ -379,6 +379,9 @@ exit 0
%endif
%changelog
+* Fri Nov 30 2007 Dan Walsh 3.2.1-1
+- Remove user based home directory separation
+
* Wed Nov 28 2007 Dan Walsh 3.1.2-2
- Remove user specific crond_t
diff --git a/sources b/sources
index 67e33f60..48ad9d9c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-87950d2bd364b8acb855cd3d4c2dc2ef serefpolicy-3.2.1.tgz
+a2c1f043fe71c1b7f936b84d0cfa5eb1 serefpolicy-3.2.1.tgz