type ramdump_exec, exec_type, vendor_file_type, file_type; type ramdump, domain; userdebug_or_eng(` init_daemon_domain(ramdump) set_prop(ramdump, vendor_ramdump_prop) # f2fs set pin file requires sys_admin allow ramdump self:capability { sys_admin sys_rawio }; allow ramdump ramdump_vendor_data_file:dir create_dir_perms; allow ramdump ramdump_vendor_data_file:file create_file_perms; allow ramdump proc_cmdline:file r_file_perms; allow ramdump block_device:dir search; allow ramdump misc_block_device:blk_file rw_file_perms; allow ramdump userdata_block_device:blk_file rw_file_perms; # Allow ReadDefaultFstab(). read_fstab(ramdump) # read /fstab.${ro.hardware} allow ramdump rootfs:file r_file_perms; r_dir_file(ramdump, sysfs_type) # To access statsd. hwbinder_use(ramdump) get_prop(ramdump, hwservicemanager_prop) get_prop(ramdump, boot_status_prop) allow ramdump fwk_stats_hwservice:hwservice_manager find; binder_call(ramdump, stats_service_server) allow ramdump fwk_stats_service:service_manager find; binder_use(ramdump) # To implement fusefs (ramdumpfs) under /mnt/vendor/ramdump. allow ramdump fuse:filesystem relabelfrom; allow ramdump fuse_device:chr_file rw_file_perms; allow ramdump mnt_vendor_file:dir r_dir_perms; allow ramdump ramdump_vendor_mnt_file:dir { getattr mounton }; allow ramdump ramdump_vendor_fs:filesystem { mount unmount relabelfrom relabelto }; allow ramdump_vendor_mnt_file ramdump_vendor_fs:filesystem associate; # Access new Stats AIDL APIs (ag/13714907). allow ramdump fwk_stats_service:service_manager find; binder_call(ramdump, servicemanager) ')