1type ims, domain;
2type ims_exec, exec_type, vendor_file_type, file_type;
3
4init_daemon_domain(ims)
5net_domain(ims)
6
7get_prop(ims, hwservicemanager_prop)
8set_prop(ims, ims_prop)
9set_prop(ims, ctl_vendor_imsrcsservice_prop)
10
11unix_socket_connect(ims, netmgrd, netmgrd)
12
13allow ims sysfs_soc:dir search;
14allow ims sysfs_soc:file r_file_perms;
15allow ims sysfs_timestamp_switch:file r_file_perms;
16
17allow ims self:capability net_bind_service;
18
19userdebug_or_eng(`
20  allow ims diag_device:chr_file rw_file_perms;
21')
22
23allow ims ion_device:chr_file r_file_perms;
24
25unix_socket_connect(ims, cnd, cnd)
26
27allow ims self:socket create_socket_perms;
28allow ims ims_socket:sock_file write;
29allow ims self:netlink_generic_socket create_socket_perms_no_ioctl;
30allow ims netmgrd_socket:dir search;
31allow ims netmgrd_socket:sock_file w_file_perms;
32allow ims radio_vendor_data_file:dir rw_dir_perms;
33allow ims radio_vendor_data_file:file create_file_perms;
34allowxperm ims self:socket ioctl msm_sock_ipc_ioctls;
35allowxperm ims self:udp_socket ioctl RMNET_IOCTL_EXTENDED;
36
37r_dir_file(ims, sysfs_msm_subsys)
38r_dir_file(ims, sysfs_diag)
39
40hwbinder_use(ims)
41allow ims hal_cne_hwservice:hwservice_manager find;
42binder_call(ims, cnd)
43
44dontaudit ims kernel:system module_request;
45