1 # communicate with perfd 2 allow hal_camera perfd_data_file:dir search; 3 allow hal_camera perfd:unix_stream_socket connectto; 4 allow hal_camera perfd_data_file:sock_file write; 5 6 allow hal_camera self:capability sys_nice; 7 8 # communicate with camera 9 allow hal_camera camera:unix_dgram_socket sendto; 10 allow hal_camera camera_data_file:sock_file write; 11 allow hal_camera camera_device:chr_file rw_file_perms; 12 13 allow hal_camera gpu_device:chr_file rw_file_perms; 14 15 # access to /dev/input/event{5,10} 16 allow hal_camera input_device:dir r_dir_perms; 17 allow hal_camera input_device:chr_file r_file_perms; 18 19 set_prop(hal_camera, camera_prop) 20 21 allow hal_camera sysfs_enable_ps_sensor:file w_file_perms; 22 r_dir_file(hal_camera, sysfs_type) 23 # find libraries 24 allow hal_camera system_file:dir r_dir_perms; 25 26 allow hal_camera qdisplay_service:service_manager find; 27 28 allow hal_camera self:socket { create ioctl read write }; 29 30 # Grant access to Qualcomm MSM Interface (QMI) radio sockets 31 qmux_socket(hal_camera) 32 33 # allow hal_camera to call some socket ioctls 34 allowxperm hal_camera self:socket ioctl { IPC_ROUTER_IOCTL_LOOKUP_SERVER IPC_ROUTER_IOCTL_BIND_CONTROL_PORT }; 35 36 # ignore spurious denial 37 dontaudit hal_camera graphics_device:dir search; 38 39 userdebug_or_eng(` 40 allow hal_camera diag_device:chr_file rw_file_perms; 41 ') 42