1# update_verifier
2type update_verifier, domain;
3type update_verifier_exec, system_file_type, exec_type, file_type;
4
5# Allow update_verifier to reach block devices in /dev/block.
6allow update_verifier block_device:dir search;
7
8# Read care map in /data/ota_package/.
9allow update_verifier ota_package_file:dir r_dir_perms;
10allow update_verifier ota_package_file:file r_file_perms;
11
12# Read /sys/block to find all the DM directories like (/sys/block/dm-X).
13allow update_verifier sysfs:dir r_dir_perms;
14
15# Read /sys/block/dm-X/dm/name (which is a symlink to
16# /sys/devices/virtual/block/dm-X/dm/name) to identify the mapping between
17# dm-X and system/vendor partitions.
18allow update_verifier sysfs_dm:dir r_dir_perms;
19allow update_verifier sysfs_dm:file r_file_perms;
20
21# Read all blocks in DM wrapped system partition.
22allow update_verifier dm_device:blk_file r_file_perms;
23
24# Write to kernel message.
25allow update_verifier kmsg_device:chr_file { getattr w_file_perms };
26
27# Use Boot Control HAL
28hal_client_domain(update_verifier, hal_bootctl)
29
30# Access Checkpoint commands over binder
31allow update_verifier vold_service:service_manager find;
32binder_call(update_verifier, servicemanager)
33binder_call(update_verifier, vold)
34