1 # volume manager 2 type vold, domain; 3 type vold_exec, exec_type, file_type; 4 5 init_daemon_domain(vold) 6 7 typeattribute vold mlstrustedsubject; 8 allow vold system_file:file x_file_perms; 9 allow vold block_device:dir create_dir_perms; 10 allow vold block_device:blk_file create_file_perms; 11 allow vold device:dir write; 12 allow vold devpts:chr_file rw_file_perms; 13 allow vold rootfs:dir mounton; 14 allow vold sdcard_type:dir mounton; 15 allow vold sdcard_type:filesystem { mount remount unmount }; 16 allow vold sdcard_type:dir create_dir_perms; 17 allow vold sdcard_type:file create_file_perms; 18 allow vold tmpfs:filesystem { mount unmount }; 19 allow vold tmpfs:dir create_dir_perms; 20 allow vold tmpfs:dir mounton; 21 allow vold self:capability { net_admin dac_override mknod sys_admin chown fowner fsetid }; 22 allow vold self:netlink_kobject_uevent_socket *; 23 allow vold app_data_file:dir search; 24 allow vold app_data_file:file rw_file_perms; 25 allow vold loop_device:blk_file rw_file_perms; 26 allow vold dm_device:chr_file rw_file_perms; 27 # For vold Process::killProcessesWithOpenFiles function. 28 allow vold domain:dir r_dir_perms; 29 allow vold domain:{ file lnk_file } r_file_perms; 30 allow vold domain:process { signal sigkill }; 31 allow vold self:capability { sys_ptrace kill }; 32 33 # For blkid 34 allow vold shell_exec:file rx_file_perms; 35 36 # XXX Label sysfs files with a specific type? 37 allow vold sysfs:file rw_file_perms; 38 39 write_klog(vold) 40 41 # 42 # Rules to support encrypted fs support. 43 # 44 45 # Set property. 46 unix_socket_connect(vold, property, init) 47 48 # Unmount and mount the fs. 49 allow vold labeledfs:filesystem { mount unmount remount }; 50 51 # Access /efs/userdata_footer. 52 # XXX Split into a separate type? 53 allow vold efs_file:file rw_file_perms; 54 55 # Create and mount on /data/tmp_mnt. 56 allow vold system_data_file:dir { create rw_dir_perms mounton }; 57 allow vold system_data_file:file create_file_perms; 58 59 # Set scheduling policy of kernel processes 60 allow vold kernel:process setsched; 61 62 # Property Service 63 allow vold vold_prop:property_service set; 64 allow vold powerctl_prop:property_service set; 65 allow vold ctl_default_prop:property_service set; 66 67 # ASEC 68 allow vold asec_image_file:file create_file_perms; 69 allow vold asec_image_file:dir rw_dir_perms; 70 security_access_policy(vold) 71 allow vold asec_apk_file:dir { rw_dir_perms setattr }; 72 allow vold asec_apk_file:file { r_file_perms setattr }; 73