2f5a6a96bd
A common source of mistakes when authoring sepolicy is properly
setting up property sets. This is a 3 part step of:
1. Allowing the unix domain connection to the init/property service
2. Allowing write on the property_socket file
3. Allowing the set on class property_service
The macro unix_socket_connect() handled 1 and 2, but could be
confusing for first time policy authors. 3 had to be explicitly
added.
To correct this, we introduce a new macros:
set_prop(sourcedomain, targetprop)
This macro handles steps 1, 2 and 3.
No difference in sediff is expected.
(cherrypicked from commit 625a3526f1
)
Change-Id: I630ba0178439c935d08062892990d43a3cc1239e
Signed-off-by: William Roberts <william.c.roberts@linux.intel.com>
28 lines
1 KiB
Text
28 lines
1 KiB
Text
type dhcp, domain;
|
|
type dhcp_exec, exec_type, file_type;
|
|
type dhcp_data_file, file_type, data_file_type;
|
|
|
|
init_daemon_domain(dhcp)
|
|
net_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 nlmsg_write;
|
|
allow dhcp shell_exec:file rx_file_perms;
|
|
allow dhcp system_file:file rx_file_perms;
|
|
# For /proc/sys/net/ipv4/conf/*/promote_secondaries
|
|
allow dhcp proc_net:file write;
|
|
|
|
set_prop(dhcp, dhcp_prop)
|
|
set_prop(dhcp, pan_result_prop)
|
|
|
|
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 };
|