2019-02-22 01:11:27 +01:00
|
|
|
# cppreopts
|
|
|
|
#
|
|
|
|
# This command copies preopted files from the system_b partition to the data
|
|
|
|
# partition. This domain ensures that we are only copying into specific
|
|
|
|
# directories.
|
|
|
|
|
2019-02-22 17:36:41 +01:00
|
|
|
type cppreopts, domain, mlstrustedsubject, coredomain;
|
2019-02-22 01:11:27 +01:00
|
|
|
type cppreopts_exec, system_file_type, exec_type, file_type;
|
|
|
|
|
2016-07-22 22:13:11 +02:00
|
|
|
# Technically not a daemon but we do want the transition from init domain to
|
|
|
|
# cppreopts to occur.
|
|
|
|
init_daemon_domain(cppreopts)
|
|
|
|
domain_auto_trans(cppreopts, preopt2cachename_exec, preopt2cachename);
|
2019-02-22 01:11:27 +01:00
|
|
|
|
|
|
|
# Allow cppreopts copy files into the dalvik-cache
|
|
|
|
allow cppreopts dalvikcache_data_file:dir { add_name remove_name search write };
|
|
|
|
allow cppreopts dalvikcache_data_file:file { create getattr open read rename write unlink };
|
|
|
|
|
|
|
|
# Allow cppreopts to execute itself using #!/system/bin/sh
|
|
|
|
allow cppreopts shell_exec:file rx_file_perms;
|
|
|
|
|
|
|
|
# Allow us to run find on /postinstall
|
|
|
|
allow cppreopts system_file:dir { open read };
|
|
|
|
|
|
|
|
# Allow running the cp command using cppreopts permissions. Needed so we can
|
|
|
|
# write into dalvik-cache
|
|
|
|
allow cppreopts toolbox_exec:file rx_file_perms;
|
2020-03-30 15:45:52 +02:00
|
|
|
|
|
|
|
# Silence the denial when /postinstall cannot be mounted, e.g., system_other
|
|
|
|
# is wiped, but cppreopts.sh still runs.
|
|
|
|
dontaudit cppreopts postinstall_mnt_dir:dir search;
|