policy_module(entropyd, 1.8.0) ######################################## # # Declarations # ## ##

## Determine whether entropyd can use ## audio devices as the source for ## the entropy feeds. ##

##
gen_tunable(entropyd_use_audio, true) type entropyd_t; type entropyd_exec_t; init_daemon_domain(entropyd_t, entropyd_exec_t) type entropyd_initrc_exec_t; init_script_file(entropyd_initrc_exec_t) type entropyd_var_run_t; files_pid_file(entropyd_var_run_t) ######################################## # # Local policy # allow entropyd_t self:capability { dac_read_search ipc_lock sys_admin }; dontaudit entropyd_t self:capability sys_tty_config; allow entropyd_t self:process signal_perms; manage_files_pattern(entropyd_t, entropyd_var_run_t, entropyd_var_run_t) files_pid_filetrans(entropyd_t, entropyd_var_run_t, file) kernel_read_system_state(entropyd_t) kernel_rw_kernel_sysctl(entropyd_t) dev_read_sysfs(entropyd_t) dev_read_urand(entropyd_t) dev_write_urand(entropyd_t) dev_read_rand(entropyd_t) dev_write_rand(entropyd_t) fs_getattr_all_fs(entropyd_t) fs_search_auto_mountpoints(entropyd_t) domain_use_interactive_fds(entropyd_t) logging_send_syslog_msg(entropyd_t) auth_use_nsswitch(entropyd_t) userdom_dontaudit_use_unpriv_user_fds(entropyd_t) userdom_dontaudit_search_user_home_dirs(entropyd_t) tunable_policy(`entropyd_use_audio',` dev_read_sound(entropyd_t) dev_write_sound(entropyd_t) ') optional_policy(` tunable_policy(`entropyd_use_audio',` alsa_read_lib(entropyd_t) alsa_read_rw_config(entropyd_t) ') ') optional_policy(` seutil_sigchld_newrole(entropyd_t) ') optional_policy(` udev_read_db(entropyd_t) ')