blob: 5051b655c0b4ae9a29c848235e43ec6280ec090d [file] [log] [blame]
# Policy for sensor daemon
type sensors, domain;
type sensors_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(sensors)
allow sensors self:socket create_socket_perms;
allowxperm sensors self:socket ioctl msm_sock_ipc_ioctls;
# Read/write persist partition for sensors registry
allow sensors sensors_persist_file:dir rw_dir_perms;
allow sensors sensors_persist_file:file create_file_perms;
allow sensors persist_file:dir search;
allow sensors persist_file:lnk_file read;
allow sensors mnt_vendor_file:dir r_dir_perms;
allow sensors sensors_device:chr_file rw_file_perms;
allow sensors sysfs_soc:dir search;
allow sensors sysfs_soc:file r_file_perms;
r_dir_file(sensors, sysfs_msm_subsys)
allow sensors ion_device:chr_file r_file_perms;
# ALlow for sensor direct report mode
allow sensors qdsp_device:chr_file r_file_perms;
allow sensors sysfs_ssr:file r_file_perms;
allow sensors self:qipcrtr_socket create;
# For QCOM diag port access
userdebug_or_eng(`
allow sensors diag_device:chr_file rw_file_perms;
')
# Allow to getprop persist.vendor.sys.modem.diag.mdlog
get_prop(sensors, vendor_modem_diag_prop)
# Allow to read /sys/class/power_supply/usb/input_current_now
r_dir_file(sensors, sysfs_batteryinfo)
# For reading dir/files on /dsp
r_dir_file(sensors, adsprpcd_file)
dontaudit sensors kernel:system module_request;
dontaudit sensors sysfs_esoc:dir r_dir_perms;
dontaudit sensors sysfs_faceauth:dir search;
dontaudit sensors sysfs_faceauth:file r_file_perms;
# Access to wakelock sysfs
wakelock_use(sensors)
allow sensors sensors_vendor_data_file:dir rw_dir_perms;
allow sensors sensors_vendor_data_file:file create_file_perms;
# Mutes the read unmounted files errors
dontaudit sensors unlabeled:file r_file_perms;