1type cnd, domain, mlstrustedsubject; 2type cnd_exec, exec_type, vendor_file_type, file_type; 3 4init_daemon_domain(cnd) 5 6#communicating with QTI wlan driver for WFC/ VTiWLAN quality 7unix_socket_send(cnd, wpa, hal_wifi_supplicant) 8allow cnd wpa_data_file:dir w_dir_perms; 9allow cnd wpa_data_file:sock_file create_file_perms; 10 11allow cnd self:udp_socket create_socket_perms; 12allow cnd self:{ 13 # allow receiving NETLINK responses from WLAN driver. 14 netlink_socket 15 netlink_generic_socket 16 qipcrtr_socket 17} create_socket_perms_no_ioctl; 18 19r_dir_file(cnd, sysfs_msm_subsys) 20r_dir_file(cnd, sysfs_soc) 21r_dir_file(cnd, sysfs_ssr) 22r_dir_file(cnd, sysfs_esoc) 23allow cnd proc_meminfo:file r_file_perms; 24 25set_prop(cnd, vendor_cnd_prop) 26 27# allow cnd to access cnd_data_file 28allow cnd cnd_data_file:file create_file_perms; 29allow cnd cnd_data_file:dir rw_dir_perms; 30 31# allow cnd to obtain wakelock 32wakelock_use(cnd) 33 34# To register cnd to hwbinder 35add_hwservice(cnd, hal_datafactory_hwservice) 36 37#for video call 38binder_call(cnd, ims) 39 40# allow diag logging 41userdebug_or_eng(` 42 allow cnd diag_device:chr_file rw_file_perms; 43 allow cnd sysfs_timestamp_switch:file r_file_perms; 44 r_dir_file(cnd, sysfs_diag) 45') 46 47# For WFC call(RAT change into IWLAN) 48binder_call(cnd, qtidataservices_app) 49 50get_prop(cnd, wifi_hal_prop) 51 52add_hwservice(cnd, hal_slmadapter_hwservice) 53add_hwservice(cnd, hal_mwqemadapter_hwservice) 54