diff --git a/device.te b/device.te index 9ff30d5bc..c155fcced 100644 --- a/device.te +++ b/device.te @@ -76,6 +76,9 @@ type system_block_device, dev_type; # Recovery block device. type recovery_block_device, dev_type; +# boot block device. +type boot_block_device, dev_type; + # Userdata block device mounted on /data. type userdata_block_device, dev_type; diff --git a/install_recovery.te b/install_recovery.te index 9155a2d41..138522036 100644 --- a/install_recovery.te +++ b/install_recovery.te @@ -13,8 +13,9 @@ 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 +# 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