1# service flash_recovery in init.rc
2type install_recovery, domain, domain_deprecated;
3type install_recovery_exec, exec_type, file_type;
4
5init_daemon_domain(install_recovery)
6
7allow install_recovery self:capability dac_override;
8
9# /system/bin/install-recovery.sh is a shell script.
10# Needs to execute /system/bin/sh
11allow install_recovery shell_exec:file rx_file_perms;
12
13# Execute /system/bin/applypatch
14allow install_recovery system_file:file rx_file_perms;
15
16allow install_recovery toolbox_exec:file rx_file_perms;
17
18# Update the recovery block device based off a diff of the boot block device
19allow install_recovery block_device:dir search;
20allow install_recovery boot_block_device:blk_file r_file_perms;
21allow install_recovery recovery_block_device:blk_file rw_file_perms;
22
23# Create and delete /cache/saved.file
24allow install_recovery { cache_file cache_recovery_file }:dir rw_dir_perms;
25allow install_recovery { cache_file cache_recovery_file }:file create_file_perms;
26
27auditallow install_recovery cache_recovery_file:dir rw_dir_perms;
28auditallow install_recovery cache_recovery_file:file create_file_perms;
29
30# Write to /proc/sys/vm/drop_caches
31allow install_recovery proc_drop_caches:file w_file_perms;
32