1 type cnd, domain; 2 type cnd_exec, exec_type, vendor_file_type, file_type; 3 file_type_auto_trans(cnd, socket_device, cnd_socket); 4 5 # cnd is started by init, type transit from init domain to cnd domain 6 init_daemon_domain(cnd) 7 8 allow cnd self:capability { net_bind_service }; 9 wakelock_use(cnd) 10 11 allow cnd self:udp_socket create_socket_perms; 12 allowxperm cnd self:udp_socket ioctl SIOCGIFMTU; 13 14 allow cnd sysfs_timestamp_switch:file r_file_perms; 15 r_dir_file(cnd, sysfs_msm_subsys) 16 r_dir_file(cnd, sysfs_diag) 17 r_dir_file(cnd, sysfs_soc) 18 19 allow cnd proc_meminfo:file r_file_perms; 20 21 set_prop(cnd, cnd_prop) 22 23 allow cnd self:socket create_socket_perms; 24 allowxperm cnd self:socket ioctl msm_sock_ipc_ioctls; 25 26 # To register cnd to hwbinder 27 add_hwservice(cnd, hal_cne_hwservice) 28 hwbinder_use(cnd) 29 get_prop(cnd, hwservicemanager_prop) 30 binder_call(cnd, dataservice_app) 31 binder_call(cnd, ims) 32