• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# cppreopts
2#
3# This command copies preopted files from the system_b partition to the data
4# partition. This domain ensures that we are only copying into specific
5# directories.
6
7type cppreopts, domain, mlstrustedsubject, coredomain;
8type cppreopts_exec, system_file_type, exec_type, file_type;
9
10# Technically not a daemon but we do want the transition from init domain to
11# cppreopts to occur.
12init_daemon_domain(cppreopts)
13domain_auto_trans(cppreopts, preopt2cachename_exec, preopt2cachename);
14
15# Allow cppreopts copy files into the dalvik-cache
16allow cppreopts dalvikcache_data_file:dir { add_name remove_name search write };
17allow cppreopts dalvikcache_data_file:file { create getattr open read rename write unlink };
18
19# Allow cppreopts to execute itself using #!/system/bin/sh
20allow cppreopts shell_exec:file rx_file_perms;
21
22# Allow us to run find on /postinstall
23allow cppreopts system_file:dir { open read };
24
25# Allow running the cp command using cppreopts permissions. Needed so we can
26# write into dalvik-cache
27allow cppreopts toolbox_exec:file rx_file_perms;
28
29# Silence the denial when /postinstall cannot be mounted, e.g., system_other
30# is wiped, but cppreopts.sh still runs.
31dontaudit cppreopts postinstall_mnt_dir:dir search;
32