1 # cameraserver - camera daemon 2 type cameraserver, domain; 3 type cameraserver_exec, exec_type, file_type; 4 5 init_daemon_domain(cameraserver) 6 7 binder_use(cameraserver) 8 binder_call(cameraserver, binderservicedomain) 9 binder_call(cameraserver, appdomain) 10 binder_service(cameraserver) 11 12 # access /data/misc/camera 13 allow cameraserver camera_data_file:dir create_dir_perms; 14 allow cameraserver camera_data_file:file create_file_perms; 15 16 allow cameraserver video_device:dir r_dir_perms; 17 allow cameraserver video_device:chr_file rw_file_perms; 18 allow cameraserver ion_device:chr_file rw_file_perms; 19 20 allow cameraserver appops_service:service_manager find; 21 allow cameraserver audioserver_service:service_manager find; 22 allow cameraserver batterystats_service:service_manager find; 23 allow cameraserver cameraproxy_service:service_manager find; 24 allow cameraserver cameraserver_service:service_manager add; 25 allow cameraserver mediaserver_service:service_manager find; 26 allow cameraserver processinfo_service:service_manager find; 27 allow cameraserver scheduling_policy_service:service_manager find; 28 allow cameraserver surfaceflinger_service:service_manager find; 29 30 ### 31 ### neverallow rules 32 ### 33 34 # cameraserver should never execute any executable without a 35 # domain transition 36 neverallow cameraserver { file_type fs_type }:file execute_no_trans; 37 38 # cameraserver should never need network access. Disallow network sockets. 39 neverallow cameraserver domain:{ tcp_socket udp_socket rawip_socket } *; 40