selinux-refpolicy/policy/modules/system/init.te
Sven Vermeulen dfccb1658f Allow init scripts to create and manage (udev) /run location
With udev now using /run for its data, the init script responsible for preparing
the environment to start up udev needs to be able to setup this location as
well.

We here allow init scripts to create the /run/udev location (transitioning to
udev_var_run_t) and manage this content (creating the /run/udev subdirectories).

Signed-off-by: Sven Vermeulen <sven.vermeulen@siphos.be>
2012-07-24 08:42:36 -04:00

883 lines
21 KiB
Plaintext

policy_module(init, 1.18.4)
gen_require(`
class passwd rootok;
')
########################################
#
# Declarations
#
## <desc>
## <p>
## Enable support for upstart as the init program.
## </p>
## </desc>
gen_tunable(init_upstart, false)
# used for direct running of init scripts
# by admin domains
attribute direct_run_init;
attribute direct_init;
attribute direct_init_entry;
attribute init_script_domain_type;
attribute init_script_file_type;
attribute init_run_all_scripts_domain;
# Mark process types as daemons
attribute daemon;
#
# init_t is the domain of the init process.
#
type init_t;
type init_exec_t;
domain_type(init_t)
domain_entry_file(init_t, init_exec_t)
kernel_domtrans_to(init_t, init_exec_t)
role system_r types init_t;
#
# init_var_run_t is the type for /var/run/shutdown.pid.
#
type init_var_run_t;
files_pid_file(init_var_run_t)
#
# initctl_t is the type of the named pipe created
# by init during initialization. This pipe is used
# to communicate with init.
#
type initctl_t;
files_type(initctl_t)
mls_trusted_object(initctl_t)
type initrc_t, init_script_domain_type, init_run_all_scripts_domain;
type initrc_exec_t, init_script_file_type;
domain_type(initrc_t)
domain_entry_file(initrc_t, initrc_exec_t)
role system_r types initrc_t;
# should be part of the true block
# of the below init_upstart tunable
# but this has a typeattribute in it
corecmd_shell_entry_type(initrc_t)
type initrc_devpts_t;
term_pty(initrc_devpts_t)
files_type(initrc_devpts_t)
type initrc_state_t;
files_type(initrc_state_t)
type initrc_tmp_t;
files_tmp_file(initrc_tmp_t)
type initrc_var_log_t;
logging_log_file(initrc_var_log_t)
type initrc_var_run_t;
files_pid_file(initrc_var_run_t)
ifdef(`distro_gentoo',`
type rc_exec_t;
domain_entry_file(initrc_t, rc_exec_t)
')
ifdef(`enable_mls',`
kernel_ranged_domtrans_to(init_t, init_exec_t, s0 - mls_systemhigh)
')
########################################
#
# Init local policy
#
# Use capabilities. old rule:
allow init_t self:capability ~sys_module;
# is ~sys_module really needed? observed:
# sys_boot
# sys_tty_config
# kill: now provided by domain_kill_all_domains()
# setuid (from /sbin/shutdown)
# sys_chroot (from /usr/bin/chroot): now provided by corecmd_chroot_exec_chroot()
allow init_t self:fifo_file rw_fifo_file_perms;
# Re-exec itself
can_exec(init_t, init_exec_t)
allow init_t initrc_t:unix_stream_socket connectto;
# For /var/run/shutdown.pid.
allow init_t init_var_run_t:file manage_file_perms;
files_pid_filetrans(init_t, init_var_run_t, file)
allow init_t initctl_t:fifo_file manage_fifo_file_perms;
dev_filetrans(init_t, initctl_t, fifo_file)
# Modify utmp.
allow init_t initrc_var_run_t:file { rw_file_perms setattr };
kernel_read_system_state(init_t)
kernel_share_state(init_t)
corecmd_exec_chroot(init_t)
corecmd_exec_bin(init_t)
dev_read_sysfs(init_t)
# Early devtmpfs
dev_rw_generic_chr_files(init_t)
domain_getpgid_all_domains(init_t)
domain_kill_all_domains(init_t)
domain_signal_all_domains(init_t)
domain_signull_all_domains(init_t)
domain_sigstop_all_domains(init_t)
domain_sigchld_all_domains(init_t)
files_read_etc_files(init_t)
files_rw_generic_pids(init_t)
files_dontaudit_search_isid_type_dirs(init_t)
files_manage_etc_runtime_files(init_t)
files_etc_filetrans_etc_runtime(init_t, file)
# Run /etc/X11/prefdm:
files_exec_etc_files(init_t)
# file descriptors inherited from the rootfs:
files_dontaudit_rw_root_files(init_t)
files_dontaudit_rw_root_chr_files(init_t)
fs_list_inotifyfs(init_t)
# cjp: this may be related to /dev/log
fs_write_ramfs_sockets(init_t)
mcs_process_set_categories(init_t)
mcs_killall(init_t)
mls_file_read_all_levels(init_t)
mls_file_write_all_levels(init_t)
mls_process_write_down(init_t)
mls_fd_use_all_levels(init_t)
selinux_set_all_booleans(init_t)
term_use_all_terms(init_t)
# Run init scripts.
init_domtrans_script(init_t)
libs_rw_ld_so_cache(init_t)
logging_send_syslog_msg(init_t)
logging_rw_generic_logs(init_t)
seutil_read_config(init_t)
miscfiles_read_localization(init_t)
ifdef(`distro_gentoo',`
allow init_t self:process { getcap setcap };
init_exec_rc(initrc_t)
')
ifdef(`distro_redhat',`
fs_read_tmpfs_symlinks(init_t)
fs_rw_tmpfs_chr_files(init_t)
fs_tmpfs_filetrans(init_t, initctl_t, fifo_file)
')
tunable_policy(`init_upstart',`
corecmd_shell_domtrans(init_t, initrc_t)
',`
# Run the shell in the sysadm role for single-user mode.
# causes problems with upstart
sysadm_shell_domtrans(init_t)
')
optional_policy(`
auth_rw_login_records(init_t)
')
optional_policy(`
dbus_system_bus_client(init_t)
')
optional_policy(`
nscd_socket_use(init_t)
')
optional_policy(`
sssd_stream_connect(init_t)
')
optional_policy(`
unconfined_domain(init_t)
')
########################################
#
# Init script local policy
#
allow initrc_t self:process { getpgid setsched setpgid setrlimit getsched };
allow initrc_t self:capability ~{ sys_admin sys_module };
dontaudit initrc_t self:capability sys_module; # sysctl is triggering this
allow initrc_t self:passwd rootok;
allow initrc_t self:key manage_key_perms;
# Allow IPC with self
allow initrc_t self:unix_dgram_socket create_socket_perms;
allow initrc_t self:unix_stream_socket { create listen accept ioctl read getattr write setattr append bind connect getopt setopt shutdown connectto };
allow initrc_t self:tcp_socket create_stream_socket_perms;
allow initrc_t self:udp_socket create_socket_perms;
allow initrc_t self:fifo_file rw_file_perms;
allow initrc_t initrc_devpts_t:chr_file rw_term_perms;
term_create_pty(initrc_t, initrc_devpts_t)
# Going to single user mode
init_telinit(initrc_t)
can_exec(initrc_t, init_script_file_type)
domtrans_pattern(init_run_all_scripts_domain, initrc_exec_t, initrc_t)
manage_dirs_pattern(initrc_t, initrc_state_t, initrc_state_t)
manage_files_pattern(initrc_t, initrc_state_t, initrc_state_t)
manage_lnk_files_pattern(initrc_t, initrc_state_t, initrc_state_t)
manage_fifo_files_pattern(initrc_t, initrc_state_t, initrc_state_t)
allow initrc_t initrc_var_run_t:file manage_file_perms;
files_pid_filetrans(initrc_t, initrc_var_run_t, file)
can_exec(initrc_t, initrc_tmp_t)
manage_files_pattern(initrc_t, initrc_tmp_t, initrc_tmp_t)
manage_dirs_pattern(initrc_t, initrc_tmp_t, initrc_tmp_t)
manage_lnk_files_pattern(initrc_t, initrc_tmp_t, initrc_tmp_t)
files_tmp_filetrans(initrc_t, initrc_tmp_t, { file dir })
manage_dirs_pattern(initrc_t, initrc_var_log_t, initrc_var_log_t)
manage_files_pattern(initrc_t, initrc_var_log_t, initrc_var_log_t)
logging_log_filetrans(initrc_t, initrc_var_log_t, dir)
init_write_initctl(initrc_t)
kernel_read_system_state(initrc_t)
kernel_read_software_raid_state(initrc_t)
kernel_read_network_state(initrc_t)
kernel_read_ring_buffer(initrc_t)
kernel_change_ring_buffer_level(initrc_t)
kernel_clear_ring_buffer(initrc_t)
kernel_get_sysvipc_info(initrc_t)
kernel_read_all_sysctls(initrc_t)
kernel_rw_all_sysctls(initrc_t)
# for lsof which is used by alsa shutdown:
kernel_dontaudit_getattr_message_if(initrc_t)
files_create_lock_dirs(initrc_t)
files_pid_filetrans_lock_dir(initrc_t, "lock")
files_read_kernel_symbol_table(initrc_t)
files_setattr_lock_dirs(initrc_t)
corecmd_exec_all_executables(initrc_t)
corenet_all_recvfrom_unlabeled(initrc_t)
corenet_all_recvfrom_netlabel(initrc_t)
corenet_tcp_sendrecv_all_if(initrc_t)
corenet_udp_sendrecv_all_if(initrc_t)
corenet_tcp_sendrecv_all_nodes(initrc_t)
corenet_udp_sendrecv_all_nodes(initrc_t)
corenet_tcp_sendrecv_all_ports(initrc_t)
corenet_udp_sendrecv_all_ports(initrc_t)
corenet_tcp_connect_all_ports(initrc_t)
corenet_sendrecv_all_client_packets(initrc_t)
dev_read_rand(initrc_t)
dev_read_urand(initrc_t)
dev_write_kmsg(initrc_t)
dev_write_rand(initrc_t)
dev_write_urand(initrc_t)
dev_rw_sysfs(initrc_t)
dev_list_usbfs(initrc_t)
dev_read_framebuffer(initrc_t)
dev_write_framebuffer(initrc_t)
dev_read_realtime_clock(initrc_t)
dev_read_sound_mixer(initrc_t)
dev_write_sound_mixer(initrc_t)
dev_setattr_all_chr_files(initrc_t)
dev_rw_lvm_control(initrc_t)
dev_delete_lvm_control_dev(initrc_t)
dev_manage_generic_symlinks(initrc_t)
dev_manage_generic_files(initrc_t)
# Wants to remove udev.tbl:
dev_delete_generic_symlinks(initrc_t)
dev_getattr_all_blk_files(initrc_t)
dev_getattr_all_chr_files(initrc_t)
# Early devtmpfs
dev_rw_generic_chr_files(initrc_t)
domain_kill_all_domains(initrc_t)
domain_signal_all_domains(initrc_t)
domain_signull_all_domains(initrc_t)
domain_sigstop_all_domains(initrc_t)
domain_sigchld_all_domains(initrc_t)
domain_read_all_domains_state(initrc_t)
domain_getattr_all_domains(initrc_t)
domain_dontaudit_ptrace_all_domains(initrc_t)
domain_getsession_all_domains(initrc_t)
domain_use_interactive_fds(initrc_t)
# for lsof which is used by alsa shutdown:
domain_dontaudit_getattr_all_udp_sockets(initrc_t)
domain_dontaudit_getattr_all_tcp_sockets(initrc_t)
domain_dontaudit_getattr_all_dgram_sockets(initrc_t)
domain_dontaudit_getattr_all_pipes(initrc_t)
files_getattr_all_dirs(initrc_t)
files_getattr_all_files(initrc_t)
files_getattr_all_symlinks(initrc_t)
files_getattr_all_pipes(initrc_t)
files_getattr_all_sockets(initrc_t)
files_purge_tmp(initrc_t)
files_delete_all_locks(initrc_t)
files_read_all_pids(initrc_t)
files_delete_all_pids(initrc_t)
files_delete_all_pid_dirs(initrc_t)
files_read_etc_files(initrc_t)
files_manage_etc_runtime_files(initrc_t)
files_etc_filetrans_etc_runtime(initrc_t, file)
files_exec_etc_files(initrc_t)
files_read_usr_files(initrc_t)
files_manage_urandom_seed(initrc_t)
files_manage_generic_spool(initrc_t)
# Mount and unmount file systems.
# cjp: not sure why these are here; should use mount policy
files_list_isid_type_dirs(initrc_t)
files_mounton_isid_type_dirs(initrc_t)
files_list_default(initrc_t)
files_mounton_default(initrc_t)
fs_write_cgroup_files(initrc_t)
fs_list_inotifyfs(initrc_t)
fs_register_binary_executable_type(initrc_t)
# rhgb-console writes to ramfs
fs_write_ramfs_pipes(initrc_t)
# cjp: not sure why these are here; should use mount policy
fs_mount_all_fs(initrc_t)
fs_unmount_all_fs(initrc_t)
fs_remount_all_fs(initrc_t)
fs_getattr_all_fs(initrc_t)
# initrc_t needs to do a pidof which requires ptrace
mcs_ptrace_all(initrc_t)
mcs_killall(initrc_t)
mcs_process_set_categories(initrc_t)
mls_file_read_all_levels(initrc_t)
mls_file_write_all_levels(initrc_t)
mls_process_read_up(initrc_t)
mls_process_write_down(initrc_t)
mls_rangetrans_source(initrc_t)
mls_fd_share_all_levels(initrc_t)
selinux_get_enforce_mode(initrc_t)
storage_getattr_fixed_disk_dev(initrc_t)
storage_setattr_fixed_disk_dev(initrc_t)
storage_setattr_removable_dev(initrc_t)
term_use_all_terms(initrc_t)
term_reset_tty_labels(initrc_t)
auth_rw_login_records(initrc_t)
auth_setattr_login_records(initrc_t)
auth_rw_lastlog(initrc_t)
auth_read_pam_pid(initrc_t)
auth_delete_pam_pid(initrc_t)
auth_delete_pam_console_data(initrc_t)
auth_use_nsswitch(initrc_t)
libs_rw_ld_so_cache(initrc_t)
libs_exec_lib_files(initrc_t)
libs_exec_ld_so(initrc_t)
logging_send_audit_msgs(initrc_t)
logging_send_syslog_msg(initrc_t)
logging_manage_generic_logs(initrc_t)
logging_read_all_logs(initrc_t)
logging_append_all_logs(initrc_t)
logging_read_audit_config(initrc_t)
miscfiles_read_localization(initrc_t)
# slapd needs to read cert files from its initscript
miscfiles_read_generic_certs(initrc_t)
modutils_read_module_config(initrc_t)
modutils_domtrans_insmod(initrc_t)
seutil_read_config(initrc_t)
userdom_read_user_home_content_files(initrc_t)
# Allow access to the sysadm TTYs. Note that this will give access to the
# TTYs to any process in the initrc_t domain. Therefore, daemons and such
# started from init should be placed in their own domain.
userdom_use_user_terminals(initrc_t)
ifdef(`distro_debian',`
dev_setattr_generic_dirs(initrc_t)
fs_tmpfs_filetrans(initrc_t, initrc_var_run_t, dir)
# for storing state under /dev/shm
fs_setattr_tmpfs_dirs(initrc_t)
storage_manage_fixed_disk(initrc_t)
storage_tmpfs_filetrans_fixed_disk(initrc_t)
files_setattr_etc_dirs(initrc_t)
')
ifdef(`distro_gentoo',`
kernel_dontaudit_getattr_core_if(initrc_t)
# seed udev /dev
allow initrc_t self:process setfscreate;
dev_create_null_dev(initrc_t)
dev_create_zero_dev(initrc_t)
dev_create_generic_dirs(initrc_t)
term_create_console_dev(initrc_t)
# unfortunately /sbin/rc does stupid tricks
# with /dev/.rcboot to decide if we are in
# early init
dev_create_generic_dirs(initrc_t)
dev_delete_generic_dirs(initrc_t)
# allow bootmisc to create /var/lock/.keep.
files_manage_generic_locks(initrc_t)
files_pid_filetrans(initrc_t, initrc_state_t, dir, "openrc")
# openrc uses tmpfs for its state data
fs_tmpfs_filetrans(initrc_t, initrc_state_t, { dir file fifo_file lnk_file })
files_mountpoint(initrc_state_t)
# init scripts touch this
clock_dontaudit_write_adjtime(initrc_t)
logging_send_audit_msgs(initrc_t)
# for integrated run_init to read run_init_type.
# happens during boot (/sbin/rc execs init scripts)
seutil_read_default_contexts(initrc_t)
# /lib/rcscripts/net/system.sh rewrites resolv.conf :(
sysnet_create_config(initrc_t)
sysnet_write_config(initrc_t)
sysnet_setattr_config(initrc_t)
optional_policy(`
alsa_read_lib(initrc_t)
')
optional_policy(`
arpwatch_manage_data_files(initrc_t)
')
optional_policy(`
dhcpd_setattr_state_files(initrc_t)
')
')
ifdef(`distro_redhat',`
# this is from kmodule, which should get its own policy:
allow initrc_t self:capability sys_admin;
allow initrc_t self:process setfscreate;
# Red Hat systems seem to have a stray
# fd open from the initrd
kernel_dontaudit_use_fds(initrc_t)
files_dontaudit_read_root_files(initrc_t)
# These seem to be from the initrd
# during device initialization:
dev_create_generic_dirs(initrc_t)
dev_rwx_zero(initrc_t)
dev_rx_raw_memory(initrc_t)
dev_wx_raw_memory(initrc_t)
storage_raw_read_fixed_disk(initrc_t)
storage_raw_write_fixed_disk(initrc_t)
files_create_boot_dirs(initrc_t)
files_create_boot_flag(initrc_t)
files_rw_boot_symlinks(initrc_t)
# wants to read /.fonts directory
files_read_default_files(initrc_t)
files_mountpoint(initrc_tmp_t)
# Needs to cp localtime to /var dirs
files_write_var_dirs(initrc_t)
fs_read_tmpfs_symlinks(initrc_t)
fs_rw_tmpfs_chr_files(initrc_t)
storage_manage_fixed_disk(initrc_t)
storage_dev_filetrans_fixed_disk(initrc_t)
storage_getattr_removable_dev(initrc_t)
# readahead asks for these
auth_dontaudit_read_shadow(initrc_t)
# init scripts cp /etc/localtime over other directories localtime
miscfiles_rw_localization(initrc_t)
miscfiles_setattr_localization(initrc_t)
miscfiles_relabel_localization(initrc_t)
miscfiles_read_fonts(initrc_t)
miscfiles_read_hwdata(initrc_t)
optional_policy(`
alsa_manage_rw_config(initrc_t)
')
optional_policy(`
bind_manage_config_dirs(initrc_t)
bind_write_config(initrc_t)
')
optional_policy(`
#for /etc/rc.d/init.d/nfs to create /etc/exports
rpc_write_exports(initrc_t)
rpc_manage_nfs_state_data(initrc_t)
')
optional_policy(`
sysnet_rw_dhcp_config(initrc_t)
sysnet_manage_config(initrc_t)
')
optional_policy(`
xserver_delete_log(initrc_t)
')
')
ifdef(`distro_suse',`
optional_policy(`
# set permissions on /tmp/.X11-unix
xserver_setattr_xdm_tmp_dirs(initrc_t)
')
')
optional_policy(`
amavis_search_lib(initrc_t)
amavis_setattr_pid_files(initrc_t)
')
optional_policy(`
dev_rw_apm_bios(initrc_t)
')
optional_policy(`
apache_read_config(initrc_t)
apache_list_modules(initrc_t)
')
optional_policy(`
asterisk_setattr_logs(initrc_t)
asterisk_setattr_pid_files(initrc_t)
')
optional_policy(`
bind_read_config(initrc_t)
# for chmod in start script
bind_setattr_pid_dirs(initrc_t)
')
optional_policy(`
dev_read_usbfs(initrc_t)
bluetooth_read_config(initrc_t)
')
optional_policy(`
cgroup_stream_connect_cgred(initrc_t)
')
optional_policy(`
clamav_read_config(initrc_t)
')
optional_policy(`
cpucontrol_stub(initrc_t)
dev_getattr_cpu_dev(initrc_t)
')
optional_policy(`
dev_getattr_printer_dev(initrc_t)
cups_read_log(initrc_t)
cups_read_rw_config(initrc_t)
#cups init script clears error log
cups_write_log(initrc_t)
')
optional_policy(`
daemontools_manage_svc(initrc_t)
')
optional_policy(`
dbus_connect_system_bus(initrc_t)
dbus_system_bus_client(initrc_t)
dbus_read_config(initrc_t)
optional_policy(`
consolekit_dbus_chat(initrc_t)
')
optional_policy(`
networkmanager_dbus_chat(initrc_t)
')
optional_policy(`
policykit_dbus_chat(initrc_t)
')
')
optional_policy(`
# /var/run/dovecot/login/ssl-parameters.dat is a hard link to
# /var/lib/dovecot/ssl-parameters.dat and init tries to clean up
# the directory. But we do not want to allow this.
# The master process of dovecot will manage this file.
dovecot_dontaudit_unlink_lib_files(initrc_t)
')
optional_policy(`
ftp_read_config(initrc_t)
')
optional_policy(`
gpm_setattr_gpmctl(initrc_t)
')
optional_policy(`
hal_write_log(initrc_t)
')
optional_policy(`
dev_read_usbfs(initrc_t)
# init scripts run /etc/hotplug/usb.rc
hotplug_read_config(initrc_t)
modutils_read_module_deps(initrc_t)
')
optional_policy(`
inn_exec_config(initrc_t)
')
optional_policy(`
ipsec_read_config(initrc_t)
ipsec_manage_pid(initrc_t)
')
optional_policy(`
iscsi_stream_connect(initrc_t)
iscsi_read_lib_files(initrc_t)
')
optional_policy(`
kerberos_use(initrc_t)
')
optional_policy(`
ldap_read_config(initrc_t)
ldap_list_db(initrc_t)
')
optional_policy(`
loadkeys_exec(initrc_t)
')
optional_policy(`
# in emergency/recovery situations use sulogin
locallogin_domtrans_sulogin(initrc_t)
')
optional_policy(`
# This is needed to permit chown to read /var/spool/lpd/lp.
# This is opens up security more than necessary; this means that ANYTHING
# running in the initrc_t domain can read the printer spool directory.
# Perhaps executing /etc/rc.d/init.d/lpd should transition
# to domain lpd_t, instead of waiting for executing lpd.
lpd_list_spool(initrc_t)
lpd_read_config(initrc_t)
')
optional_policy(`
#allow initrc_t lvm_control_t:chr_file unlink;
dev_read_lvm_control(initrc_t)
dev_create_generic_chr_files(initrc_t)
lvm_read_config(initrc_t)
')
optional_policy(`
mailman_list_data(initrc_t)
mailman_read_data_symlinks(initrc_t)
')
optional_policy(`
mta_read_config(initrc_t)
mta_dontaudit_read_spool_symlinks(initrc_t)
')
optional_policy(`
ifdef(`distro_redhat',`
mysql_manage_db_dirs(initrc_t)
')
mysql_stream_connect(initrc_t)
mysql_write_log(initrc_t)
mysql_read_config(initrc_t)
')
optional_policy(`
nis_list_var_yp(initrc_t)
')
optional_policy(`
openvpn_read_config(initrc_t)
')
optional_policy(`
postgresql_manage_db(initrc_t)
postgresql_read_config(initrc_t)
')
optional_policy(`
postfix_list_spool(initrc_t)
')
optional_policy(`
puppet_rw_tmp(initrc_t)
')
optional_policy(`
quota_manage_flags(initrc_t)
')
optional_policy(`
raid_manage_mdadm_pid(initrc_t)
')
optional_policy(`
fs_write_ramfs_sockets(initrc_t)
fs_search_ramfs(initrc_t)
rhgb_rw_stream_sockets(initrc_t)
rhgb_stream_connect(initrc_t)
')
optional_policy(`
rpc_read_exports(initrc_t)
')
optional_policy(`
# bash tries to access a block device in the initrd
kernel_dontaudit_getattr_unlabeled_blk_files(initrc_t)
# for a bug in rm
files_dontaudit_write_all_pids(initrc_t)
# bash tries ioctl for some reason
files_dontaudit_ioctl_all_pids(initrc_t)
# why is this needed:
rpm_manage_db(initrc_t)
')
optional_policy(`
samba_rw_config(initrc_t)
samba_read_winbind_pid(initrc_t)
')
optional_policy(`
# shorewall-init script run /var/lib/shorewall/firewall
shorewall_lib_domtrans(initrc_t)
')
optional_policy(`
squid_read_config(initrc_t)
squid_manage_logs(initrc_t)
')
optional_policy(`
# allow init scripts to su
su_restricted_domain_template(initrc, initrc_t, system_r)
')
optional_policy(`
ssh_dontaudit_read_server_keys(initrc_t)
ssh_setattr_key_files(initrc_t)
')
optional_policy(`
sysnet_read_dhcpc_state(initrc_t)
')
optional_policy(`
udev_rw_db(initrc_t)
udev_generic_pid_filetrans_run_dirs(initrc_t, "udev")
udev_manage_pid_files(initrc_t)
udev_manage_pid_dirs(initrc_t)
udev_manage_rules_files(initrc_t)
')
optional_policy(`
uml_setattr_util_sockets(initrc_t)
')
optional_policy(`
virt_stream_connect(initrc_t)
virt_manage_svirt_cache(initrc_t)
')
optional_policy(`
unconfined_domain(initrc_t)
ifdef(`distro_redhat',`
# system-config-services causes avc messages that should be dontaudited
unconfined_dontaudit_rw_pipes(daemon)
')
optional_policy(`
mono_domtrans(initrc_t)
')
')
optional_policy(`
vmware_read_system_config(initrc_t)
vmware_append_system_config(initrc_t)
')
optional_policy(`
miscfiles_manage_fonts(initrc_t)
# cjp: is this really needed?
xfs_read_sockets(initrc_t)
')
optional_policy(`
# Set device ownerships/modes.
xserver_setattr_console_pipes(initrc_t)
# init script wants to check if it needs to update windowmanagerlist
xserver_read_xdm_rw_config(initrc_t)
')
optional_policy(`
zebra_read_config(initrc_t)
')