aboutsummaryrefslogtreecommitdiffstats
path: root/install_recovery.te
blob: 138522036e9c164ca19dc4d0c62f5485748ef576 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# service flash_recovery in init.rc
type install_recovery, domain;
type install_recovery_exec, exec_type, file_type;

init_daemon_domain(install_recovery)

allow install_recovery self:capability dac_override;

# /system/bin/install-recovery.sh is a shell script.
# Needs to execute /system/bin/sh
allow install_recovery shell_exec:file rx_file_perms;

# Execute /system/bin/applypatch
allow install_recovery system_file:file rx_file_perms;

# Update the recovery block device based off a diff of the boot block device
allow install_recovery block_device:dir search;
allow install_recovery boot_block_device:blk_file r_file_perms;
allow install_recovery recovery_block_device:blk_file rw_file_perms;

# Create and delete /cache/saved.file
allow install_recovery cache_file:dir rw_dir_perms;
allow install_recovery cache_file:file create_file_perms;

# Write to /proc/sys/vm/drop_caches
# TODO: create a specific label for this file instead of allowing
# write for all /proc files.
allow install_recovery proc:file w_file_perms;