Dominick Grift 09d9294
policy_module(devicekit, 1.2.1)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Declarations
1ec3d1a
#
1ec3d1a
1ec3d1a
type devicekit_t;
1ec3d1a
type devicekit_exec_t;
1ec3d1a
init_daemon_domain(devicekit_t, devicekit_exec_t)
1ec3d1a
1ec3d1a
type devicekit_power_t;
1ec3d1a
type devicekit_power_exec_t;
1ec3d1a
init_daemon_domain(devicekit_power_t, devicekit_power_exec_t)
1ec3d1a
1ec3d1a
type devicekit_disk_t;
1ec3d1a
type devicekit_disk_exec_t;
1ec3d1a
init_daemon_domain(devicekit_disk_t, devicekit_disk_exec_t)
1ec3d1a
1ec3d1a
type devicekit_tmp_t;
1ec3d1a
files_tmp_file(devicekit_tmp_t)
1ec3d1a
1ec3d1a
type devicekit_var_run_t;
1ec3d1a
files_pid_file(devicekit_var_run_t)
1ec3d1a
1ec3d1a
type devicekit_var_lib_t;
1ec3d1a
files_type(devicekit_var_lib_t)
1ec3d1a
1ec3d1a
type devicekit_var_log_t;
1ec3d1a
logging_log_file(devicekit_var_log_t)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
Dominick Grift 09d9294
# Local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
allow devicekit_t self:unix_dgram_socket create_socket_perms;
1ec3d1a
1ec3d1a
manage_dirs_pattern(devicekit_t, devicekit_var_run_t, devicekit_var_run_t)
1ec3d1a
manage_files_pattern(devicekit_t, devicekit_var_run_t, devicekit_var_run_t)
Dominick Grift 09d9294
files_pid_filetrans(devicekit_t, devicekit_var_run_t, { dir file })
1ec3d1a
1ec3d1a
kernel_read_system_state(devicekit_t)
1ec3d1a
1ec3d1a
dev_read_sysfs(devicekit_t)
1ec3d1a
dev_read_urand(devicekit_t)
1ec3d1a
1ec3d1a
1ec3d1a
1ec3d1a
optional_policy(`
07b7aba
	dbus_system_domain(devicekit_t, devicekit_exec_t)
1ec3d1a
	dbus_system_bus_client(devicekit_t)
1ec3d1a
Dominick Grift 09d9294
	allow devicekit_t { devicekit_disk_t devicekit_power_t }:dbus send_msg;
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	udev_read_db(devicekit_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
Dominick Grift 09d9294
# Disk local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
allow devicekit_disk_t self:capability { chown setuid setgid dac_override fowner fsetid net_admin sys_admin sys_nice sys_rawio };
1ec3d1a
1ec3d1a
allow devicekit_disk_t self:process { getsched signal_perms };
1ec3d1a
allow devicekit_disk_t self:fifo_file rw_fifo_file_perms;
1ec3d1a
allow devicekit_disk_t self:netlink_kobject_uevent_socket create_socket_perms;
1ec3d1a
1ec3d1a
manage_dirs_pattern(devicekit_disk_t, devicekit_tmp_t, devicekit_tmp_t)
1ec3d1a
manage_files_pattern(devicekit_disk_t, devicekit_tmp_t, devicekit_tmp_t)
Dominick Grift 09d9294
files_tmp_filetrans(devicekit_disk_t, devicekit_tmp_t, { dir file })
1ec3d1a
1ec3d1a
manage_dirs_pattern(devicekit_disk_t, devicekit_var_lib_t, devicekit_var_lib_t)
1ec3d1a
manage_files_pattern(devicekit_disk_t, devicekit_var_lib_t, devicekit_var_lib_t)
1ec3d1a
files_var_lib_filetrans(devicekit_disk_t, devicekit_var_lib_t, dir)
1ec3d1a
1ec3d1a
allow devicekit_disk_t devicekit_var_run_t:dir mounton;
1ec3d1a
manage_dirs_pattern(devicekit_disk_t, devicekit_var_run_t, devicekit_var_run_t)
1ec3d1a
manage_files_pattern(devicekit_disk_t, devicekit_var_run_t, devicekit_var_run_t)
Dominick Grift 09d9294
files_pid_filetrans(devicekit_disk_t, devicekit_var_run_t, { dir file })
1ec3d1a
files_filetrans_named_content(devicekit_disk_t)
1ec3d1a
1ec3d1a
kernel_dontaudit_getattr_unlabeled_files(devicekit_disk_t)
1ec3d1a
kernel_getattr_message_if(devicekit_disk_t)
Dominick Grift 09d9294
kernel_list_unlabeled(devicekit_disk_t)
1ec3d1a
kernel_read_fs_sysctls(devicekit_disk_t)
1ec3d1a
kernel_read_network_state(devicekit_disk_t)
1ec3d1a
kernel_read_software_raid_state(devicekit_disk_t)
1ec3d1a
kernel_read_system_state(devicekit_disk_t)
1ec3d1a
kernel_request_load_module(devicekit_disk_t)
1ec3d1a
kernel_setsched(devicekit_disk_t)
1ec3d1a
1ec3d1a
corecmd_exec_bin(devicekit_disk_t)
1ec3d1a
corecmd_exec_shell(devicekit_disk_t)
1ec3d1a
corecmd_getattr_all_executables(devicekit_disk_t)
1ec3d1a
1ec3d1a
dev_getattr_all_chr_files(devicekit_disk_t)
1ec3d1a
dev_getattr_mtrr_dev(devicekit_disk_t)
1ec3d1a
dev_rw_generic_blk_files(devicekit_disk_t)
Dominick Grift 09d9294
dev_getattr_usbfs_dirs(devicekit_disk_t)
Dominick Grift 09d9294
dev_manage_generic_files(devicekit_disk_t)
Dominick Grift 09d9294
dev_read_urand(devicekit_disk_t)
Dominick Grift 09d9294
dev_rw_sysfs(devicekit_disk_t)
1ec3d1a
1ec3d1a
domain_getattr_all_pipes(devicekit_disk_t)
1ec3d1a
domain_getattr_all_sockets(devicekit_disk_t)
1ec3d1a
domain_getattr_all_stream_sockets(devicekit_disk_t)
1ec3d1a
domain_read_all_domains_state(devicekit_disk_t)
1ec3d1a
1ec3d1a
files_dontaudit_read_all_symlinks(devicekit_disk_t)
1ec3d1a
files_getattr_all_sockets(devicekit_disk_t)
1ec3d1a
files_getattr_all_dirs(devicekit_disk_t)
1ec3d1a
files_getattr_all_files(devicekit_disk_t)
1ec3d1a
files_getattr_all_pipes(devicekit_disk_t)
1ec3d1a
files_manage_boot_dirs(devicekit_disk_t)
1ec3d1a
files_manage_isid_type_dirs(devicekit_disk_t)
1ec3d1a
files_manage_mnt_dirs(devicekit_disk_t)
1ec3d1a
files_read_etc_runtime_files(devicekit_disk_t)
1ec3d1a
1ec3d1a
fs_getattr_all_fs(devicekit_disk_t)
1ec3d1a
fs_list_inotifyfs(devicekit_disk_t)
1ec3d1a
fs_manage_fusefs_dirs(devicekit_disk_t)
1ec3d1a
fs_mount_all_fs(devicekit_disk_t)
1ec3d1a
fs_unmount_all_fs(devicekit_disk_t)
1ec3d1a
fs_search_all(devicekit_disk_t)
1ec3d1a
1ec3d1a
mls_file_read_all_levels(devicekit_disk_t)
1ec3d1a
mls_file_write_to_clearance(devicekit_disk_t)
1ec3d1a
1ec3d1a
storage_raw_read_fixed_disk(devicekit_disk_t)
1ec3d1a
storage_raw_write_fixed_disk(devicekit_disk_t)
1ec3d1a
storage_raw_read_removable_device(devicekit_disk_t)
1ec3d1a
storage_raw_write_removable_device(devicekit_disk_t)
1ec3d1a
1ec3d1a
term_use_all_inherited_terms(devicekit_disk_t)
1ec3d1a
1ec3d1a
auth_use_nsswitch(devicekit_disk_t)
1ec3d1a
1ec3d1a
logging_send_syslog_msg(devicekit_disk_t)
1ec3d1a
1ec3d1a
userdom_read_all_users_state(devicekit_disk_t)
1ec3d1a
userdom_search_user_home_dirs(devicekit_disk_t)
1ec3d1a
userdom_manage_user_tmp_dirs(devicekit_disk_t)
1ec3d1a
1ec3d1a
optional_policy(`
07b7aba
	dbus_system_domain(devicekit_disk_t, devicekit_disk_exec_t)
1ec3d1a
	dbus_system_bus_client(devicekit_disk_t)
1ec3d1a
1ec3d1a
	allow devicekit_disk_t devicekit_t:dbus send_msg;
1ec3d1a
1ec3d1a
	optional_policy(`
1ec3d1a
		consolekit_dbus_chat(devicekit_disk_t)
1ec3d1a
	')
Dominick Grift 09d9294
Dominick Grift 09d9294
	optional_policy(`
Dominick Grift 09d9294
		policykit_dbus_chat(devicekit_disk_t)
Dominick Grift 09d9294
	')
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	fstools_domtrans(devicekit_disk_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	lvm_domtrans(devicekit_disk_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	mount_domtrans(devicekit_disk_t)
1938a13
	mount_read_pid_files(devicekit_disk_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	policykit_domtrans_auth(devicekit_disk_t)
1ec3d1a
	policykit_read_lib(devicekit_disk_t)
1ec3d1a
	policykit_read_reload(devicekit_disk_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	raid_domtrans_mdadm(devicekit_disk_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	systemd_read_logind_sessions_files(devicekit_disk_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	udev_domtrans(devicekit_disk_t)
1ec3d1a
	udev_read_db(devicekit_disk_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	virt_manage_images(devicekit_disk_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	unconfined_domain(devicekit_t)
1ec3d1a
	unconfined_domain(devicekit_power_t)
1ec3d1a
	unconfined_domain(devicekit_disk_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
Dominick Grift 09d9294
# Power local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
allow devicekit_power_t self:capability { dac_override net_admin sys_admin sys_tty_config sys_nice };
d5d1d79
allow devicekit_power_t self:capability2 compromise_kernel;
1ec3d1a
allow devicekit_power_t self:process { getsched signal_perms };
1ec3d1a
allow devicekit_power_t self:fifo_file rw_fifo_file_perms;
1ec3d1a
allow devicekit_power_t self:unix_dgram_socket create_socket_perms;
1ec3d1a
allow devicekit_power_t self:netlink_kobject_uevent_socket create_socket_perms;
1ec3d1a
1ec3d1a
manage_dirs_pattern(devicekit_power_t, devicekit_tmp_t, devicekit_tmp_t)
1ec3d1a
manage_files_pattern(devicekit_power_t, devicekit_tmp_t, devicekit_tmp_t)
1ec3d1a
files_tmp_filetrans(devicekit_power_t, devicekit_tmp_t, { file dir })
1ec3d1a
1ec3d1a
manage_dirs_pattern(devicekit_power_t, devicekit_var_lib_t, devicekit_var_lib_t)
1ec3d1a
manage_files_pattern(devicekit_power_t, devicekit_var_lib_t, devicekit_var_lib_t)
1ec3d1a
files_var_lib_filetrans(devicekit_power_t, devicekit_var_lib_t, dir)
1ec3d1a
e5b01e8
manage_files_pattern(devicekit_power_t, devicekit_var_log_t, devicekit_var_log_t)
1ec3d1a
logging_log_filetrans(devicekit_power_t, devicekit_var_log_t, file)
1ec3d1a
1ec3d1a
manage_dirs_pattern(devicekit_power_t, devicekit_var_run_t, devicekit_var_run_t)
Dominick Grift 09d9294
manage_files_pattern(devicekit_power_t, devicekit_var_run_t, devicekit_var_run_t)
Dominick Grift 09d9294
files_pid_filetrans(devicekit_power_t, devicekit_var_run_t, { dir file })
1ec3d1a
1ec3d1a
kernel_read_fs_sysctls(devicekit_power_t)
1ec3d1a
kernel_read_network_state(devicekit_power_t)
1ec3d1a
kernel_read_system_state(devicekit_power_t)
1ec3d1a
kernel_rw_hotplug_sysctls(devicekit_power_t)
1ec3d1a
kernel_rw_kernel_sysctl(devicekit_power_t)
1ec3d1a
kernel_rw_vm_sysctls(devicekit_power_t)
1ec3d1a
kernel_search_debugfs(devicekit_power_t)
1ec3d1a
kernel_write_proc_files(devicekit_power_t)
1ec3d1a
kernel_setsched(devicekit_power_t)
1ec3d1a
1ec3d1a
corecmd_exec_bin(devicekit_power_t)
1ec3d1a
corecmd_exec_shell(devicekit_power_t)
1ec3d1a
1ec3d1a
dev_read_input(devicekit_power_t)
1ec3d1a
dev_read_urand(devicekit_power_t)
1ec3d1a
dev_rw_generic_usb_dev(devicekit_power_t)
1ec3d1a
dev_rw_generic_chr_files(devicekit_power_t)
1ec3d1a
dev_rw_netcontrol(devicekit_power_t)
1ec3d1a
dev_rw_sysfs(devicekit_power_t)
1ec3d1a
dev_read_rand(devicekit_power_t)
1ec3d1a
dev_getattr_all_chr_files(devicekit_power_t)
1ec3d1a
Dominick Grift 09d9294
domain_read_all_domains_state(devicekit_power_t)
Chris PeBenito 9401ae1
1ec3d1a
files_read_kernel_img(devicekit_power_t)
1ec3d1a
files_read_etc_runtime_files(devicekit_power_t)
1ec3d1a
files_dontaudit_list_mnt(devicekit_power_t)
1ec3d1a
Dominick Grift 09d9294
fs_getattr_all_fs(devicekit_power_t)
1ec3d1a
fs_list_inotifyfs(devicekit_power_t)
1ec3d1a
1ec3d1a
term_use_all_inherited_terms(devicekit_power_t)
1ec3d1a
1ec3d1a
auth_use_nsswitch(devicekit_power_t)
1ec3d1a
1ec3d1a
seutil_exec_setfiles(devicekit_power_t)
1ec3d1a
1ec3d1a
sysnet_domtrans_ifconfig(devicekit_power_t)
1ec3d1a
sysnet_domtrans_dhcpc(devicekit_power_t)
1ec3d1a
1ec3d1a
userdom_read_all_users_state(devicekit_power_t)
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	bootloader_domtrans(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	consoletype_exec(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	cron_initrc_domtrans(devicekit_power_t)
1ec3d1a
	cron_systemctl(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
07b7aba
	dbus_system_domain(devicekit_power_t, devicekit_power_exec_t)
1ec3d1a
	dbus_system_bus_client(devicekit_power_t)
1ec3d1a
1ec3d1a
	allow devicekit_power_t devicekit_t:dbus send_msg;
1ec3d1a
1ec3d1a
	optional_policy(`
1ec3d1a
		consolekit_dbus_chat(devicekit_power_t)
1ec3d1a
	')
1ec3d1a
1ec3d1a
	optional_policy(`
Dominick Grift 09d9294
		hal_dbus_chat(devicekit_power_t)
Dominick Grift 09d9294
	')
Dominick Grift 09d9294
Dominick Grift 09d9294
	optional_policy(`
1ec3d1a
		networkmanager_dbus_chat(devicekit_power_t)
1ec3d1a
	')
1ec3d1a
1ec3d1a
	optional_policy(`
Dominick Grift 09d9294
		policykit_dbus_chat(devicekit_power_t)
Dominick Grift 09d9294
	')
Dominick Grift 09d9294
Dominick Grift 09d9294
	optional_policy(`
1ec3d1a
		rpm_dbus_chat(devicekit_power_t)
1ec3d1a
	')
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	fstools_domtrans(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	gnome_manage_home_config(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	hal_domtrans_mac(devicekit_power_t)
1ec3d1a
	hal_manage_pid_dirs(devicekit_power_t)
1ec3d1a
	hal_manage_pid_files(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
Dominick Grift 09d9294
	modutils_domtrans_insmod(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
Dominick Grift 09d9294
	mount_domtrans(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
Dominick Grift 09d9294
	networkmanager_domtrans(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
Chris PeBenito 9401ae1
	policykit_domtrans_auth(devicekit_power_t)
Chris PeBenito 9401ae1
	policykit_read_lib(devicekit_power_t)
Chris PeBenito 9401ae1
	policykit_read_reload(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	readahead_domtrans(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	udev_read_db(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	usbmuxd_stream_connect(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	vbetool_domtrans(devicekit_power_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	corenet_tcp_connect_xserver_port(devicekit_power_t)
1ec3d1a
	xserver_stream_connect(devicekit_power_t)
1ec3d1a
')
ccdaf10