PERFORCE change 22219 for review
Brian Feldman
green at freebsd.org
Thu Dec 12 21:17:16 GMT 2002
http://perforce.freebsd.org/chv.cgi?CH=22219
Change 22219 by green at green_laptop_2 on 2002/12/12 13:17:04
* Add a uses_libc(domain) macro, used now by uses_shlib(domain)
and every_domain(domain), which defines generic permissions
necessary by libc in general. So far, these are to readlink(2)
/etc/malloc.conf and to read from /dev/u?random.
* Add policy and file contexts for malloc.conf.
* Add policy and file contexts for /var/db, /var/db/entropy,
and for the /usr/libexec/save-entropy cron-job.
Affected files ...
.. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/initrc.te#2 edit
.. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/save-entropy.te#1 add
.. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/save-entropy.fc#1 add
.. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/types.fc#6 edit
.. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/files.lst#5 edit
.. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/global_macros.te#2 edit
.. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/types/file.te#2 edit
Differences ...
==== //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/initrc.te#2 (text+ko) ====
@@ -95,6 +95,10 @@
allow initrc_t var_lib_t:file rw_file_perms;
allow initrc_t var_lib_t:file unlink;
+# Access /var/db/entropy.
+allow initrc_t var_db_entropy_t:file rw_file_perms;
+allow initrc_t var_db_entropy_t:file unlink;
+
# Create lock file.
allow initrc_t var_lock_t:dir create_dir_perms;
allow initrc_t var_lock_t:file create_file_perms;
==== //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/types.fc#6 (text+ko) ====
@@ -54,6 +54,8 @@
/var(/.*)? system_u:object_r:var_t
/var/catman(/.*)? system_u:object_r:catman_t
/var/cache/man(/.*)? system_u:object_r:catman_t
+/var/db(/.*)? system_u:object_r:var_db_t
+/var/db/entropy(/.*)? system_u:object_r:var_db_entropy_t
/var/yp(/.*)? system_u:object_r:var_yp_t
/var/lib(/.*)? system_u:object_r:var_lib_t
/var/lib/nfs(/.*)? system_u:object_r:var_lib_nfs_t
@@ -145,6 +147,7 @@
/etc/mrtg(/.*)? system_u:object_r:etc_mrtg_t
/etc/selinux(/.*)? system_u:object_r:policy_src_t
/etc/security/sebsd(/.*)? system_u:object_r:policy_config_t
+/etc/malloc\.conf system_u:object_r:malloc_conf_t
#
# /lib
==== //depot/projects/trustedbsd/mac/contrib/sebsd/policy/files.lst#5 (text+ko) ====
@@ -97,6 +97,7 @@
file_contexts/program/rshd.fc
file_contexts/program/run_deb.fc
file_contexts/program/run_init.fc
+file_contexts/program/save-entropy.fc
file_contexts/program/selopt.fc
file_contexts/program/sendmail.fc
file_contexts/program/setfiles.fc
@@ -226,6 +227,7 @@
domains/program/xserver.te
domains/program/ypbind.te
domains/program/acct.te
+domains/program/save-entropy.te
domains/test
domains/test/test_wait.te
domains/test/test_capable_net.te
==== //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/global_macros.te#2 (text+ko) ====
@@ -277,10 +277,22 @@
allow $1 lib_t:{ file lnk_file } r_file_perms;
allow $1 usr_t:{ file lnk_file } r_file_perms;
allow $1 null_device_t:chr_file rw_file_perms;
+uses_libc($1)
')
#################################
#
+# uses_libc(domain)
+#
+# Permissions for using the standard C library.
+#
+define(`uses_libc',`
+allow $1 random_device_t:{ chr_file lnk_file } r_file_perms;
+allow $1 malloc_conf_t:lnk_file { getattr read };
+')
+
+#################################
+#
# can_exec(domain, type)
#
# Permissions for executing programs with
@@ -759,7 +771,7 @@
allow $1 device_t:lnk_file r_file_perms;
# Read /dev/random and /dev/zero.
-allow $1 random_device_t:chr_file r_file_perms;
+allow $1 random_device_t:{ chr_file lnk_file } r_file_perms;
allow $1 zero_device_t:chr_file r_file_perms;
# Read the root directory of a tmpfs filesytem and any symbolic links.
@@ -878,6 +890,9 @@
# Grant permissions needed to create TCP and UDP sockets and
# to access the network.
can_network($1)
+
+# Include generically-useful libc-requisite functionality.
+uses_libc($1)
')
#######################
==== //depot/projects/trustedbsd/mac/contrib/sebsd/policy/types/file.te#2 (text+ko) ====
@@ -93,6 +93,10 @@
# pump needs write access to this file.
type resolv_conf_t, file_type, sysadmfile;
+# malloc_conf_t is the type of the /etc/malloc.conf malloc(3)-configuration
+# symbolic link.
+type malloc_conf_t, file_type, sysadmfile;
+
# etc_mrtg_t is the type of the /etc/mrtg directory and files.
# crond needs write access to this directory.
type etc_mrtg_t, file_type, sysadmfile;
@@ -151,6 +155,7 @@
#
# Types for subdirectories of /var.
#
+type var_db_t, file_type, sysadmfile;
type var_run_t, file_type, sysadmfile;
type var_log_t, file_type, sysadmfile;
type var_lock_t, file_type, sysadmfile;
@@ -158,6 +163,9 @@
type var_spool_t, file_type, sysadmfile;
type var_yp_t, file_type, sysadmfile;
+# Type for /var/db/entropy.
+type var_db_entropy_t, file_type, sysadmfile;
+
# Type for /var/log/sa.
type var_log_sa_t, file_type, sysadmfile;
To Unsubscribe: send mail to majordomo at trustedbsd.org
with "unsubscribe trustedbsd-cvs" in the body of the message
More information about the trustedbsd-cvs
mailing list