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