summaryrefslogtreecommitdiff
path: root/sepolicy/cnss-daemon.te
blob: 9b35ebe1c2afbf8fbb0a437d698b36308a0e38f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# Policy for /system/bin/cnss-daemon
type cnss-daemon, domain;
type cnss-daemon_exec, exec_type, vendor_file_type, file_type;

allow cnss-daemon self:capability {
    net_bind_service
};

init_daemon_domain(cnss-daemon)

allow cnss-daemon self:capability { setgid setuid };

# whitelist socket ioctl commands
allow cnss-daemon self:netlink_socket create_socket_perms_no_ioctl;
allow cnss-daemon self:socket create_socket_perms;
allowxperm cnss-daemon self:socket ioctl msm_sock_ipc_ioctls;

allow cnss-daemon proc_net:file rw_file_perms;
allow cnss-daemon sysfs:dir r_dir_perms;
allow cnss-daemon sysfs_net:dir search;
allow cnss-daemon sysfs_net:file rw_file_perms;
allow cnss-daemon sysfs_pcie:dir search;
allow cnss-daemon sysfs_pcie:file w_file_perms;
allow cnss-daemon sysfs_soc:dir search;
allow cnss-daemon sysfs_soc:file r_file_perms;
r_dir_file(cnss-daemon, sysfs_msm_subsys)

# access to /dev/diag on debug builds
userdebug_or_eng(`
  allow cnss-daemon diag_device:chr_file rw_file_perms;
')