diff --git a/dhcp.te b/dhcp.te index 500456574a21a663fcd283bb67e40603aba047ce..5856a260fdfea72631a8b854a4c52f454ad6ca63 100644 --- a/dhcp.te +++ b/dhcp.te @@ -1,10 +1,31 @@ type dhcp, domain; +permissive dhcp; type dhcp_exec, exec_type, file_type; type dhcp_data_file, file_type, data_file_type; type dhcp_system_file, file_type, data_file_type; init_daemon_domain(dhcp) net_domain(dhcp) -unconfined_domain(dhcp) + +allow dhcp cgroup:dir { create write add_name }; +allow dhcp self:capability { setgid setuid net_admin net_raw net_bind_service }; +allow dhcp self:packet_socket create_socket_perms; +allow dhcp self:netlink_route_socket { create_socket_perms nlmsg_write }; +allow dhcp shell_exec:file rx_file_perms; +allow dhcp system_file:file rx_file_perms; +allow dhcp proc:file write; +allow dhcp system_prop:property_service set ; +allow dhcp dhcp_system_file:file rx_file_perms; +allow dhcp dhcp_system_file:dir r_dir_perms; +unix_socket_connect(dhcp, property, init) +allow dhcp owntty_device:chr_file rw_file_perms; type_transition dhcp system_data_file:{ dir file } dhcp_data_file; +allow dhcp dhcp_data_file:dir create_dir_perms; +allow dhcp dhcp_data_file:file create_file_perms; + +# PAN connections +allow dhcp netd:fd use; +allow dhcp netd:fifo_file rw_file_perms; +allow dhcp netd:{ dgram_socket_class_set unix_stream_socket } { read write }; +allow dhcp netd:{ netlink_kobject_uevent_socket netlink_route_socket netlink_nflog_socket } { read write };