# wlbtd.te

type wlbtd, domain;

type wlbtd_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(wlbtd);

allow wlbtd conn_vendor_data_file:dir search;
allow wlbtd conn_vendor_data_file:file rw_file_perms;
allow wlbtd self:netlink_generic_socket { create setopt bind getattr read write };

allow wlbtd init:unix_stream_socket connectto;

r_dir_file(wlbtd, sysfs_wifi);
allow wlbtd sysfs_wifi_writable:file rw_file_perms;

set_prop(wlbtd, vendor_wlbtd_prop);
