5e37271df8
system_file_type is a new attribute used to identify files which exist on the /system partition. It's useful for allow rules in init, which are based off of a blacklist of writable files. Additionally, it's useful for constructing neverallow rules to prevent regressions. Additionally, add commented out tests which enforce that all files on the /system partition have the system_file_type attribute. These tests will be uncommented in a future change after all the device-specific policies are cleaned up. Test: Device boots and no obvious problems. Change-Id: Id9bae6625f042594c8eba74ca712abb09702c1e5
27 lines
1.2 KiB
Text
27 lines
1.2 KiB
Text
# otapreopt_slot
|
|
#
|
|
# This command set moves the artifact corresponding to the current slot
|
|
# from /data/ota to /data/dalvik-cache.
|
|
|
|
type otapreopt_slot, domain, mlstrustedsubject;
|
|
type otapreopt_slot_exec, system_file_type, exec_type, file_type;
|
|
|
|
|
|
# The otapreopt_slot renames the OTA dalvik-cache to the regular dalvik-cache, and cleans up
|
|
# the directory afterwards. For logging of aggregate size, we need getattr.
|
|
allow otapreopt_slot ota_data_file:dir { rw_dir_perms rename reparent rmdir };
|
|
allow otapreopt_slot ota_data_file:{ file lnk_file } getattr;
|
|
# (du follows symlinks)
|
|
allow otapreopt_slot ota_data_file:lnk_file read;
|
|
|
|
# Delete old content of the dalvik-cache.
|
|
allow otapreopt_slot dalvikcache_data_file:dir { add_name getattr open read remove_name rmdir search write };
|
|
allow otapreopt_slot dalvikcache_data_file:file { getattr unlink };
|
|
allow otapreopt_slot dalvikcache_data_file:lnk_file { getattr read unlink };
|
|
|
|
# Allow cppreopts to execute itself using #!/system/bin/sh
|
|
allow otapreopt_slot shell_exec:file rx_file_perms;
|
|
|
|
# Allow running the mv and rm/rmdir commands using otapreopt_slot permissions.
|
|
# Needed so we can move artifacts into /data/dalvik-cache/dalvik-cache.
|
|
allow otapreopt_slot toolbox_exec:file rx_file_perms;
|