• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1type composd, domain, coredomain;
2type composd_exec, system_file_type, exec_type, file_type;
3
4# Host dynamic AIDL services
5init_daemon_domain(composd)
6binder_use(composd)
7add_service(composd, compos_service)
8
9# Call back into system server
10binder_call(composd, system_server)
11
12# Start a VM
13virtualizationservice_use(composd)
14
15# Prepare staging directory for odrefresh
16allow composd apex_art_data_file:dir { create_dir_perms relabelfrom };
17allow composd apex_art_staging_data_file:dir { create_dir_perms relabelto };
18allow composd apex_art_staging_data_file:file { getattr unlink };
19
20# Delete files in the odrefresh target directory
21allow composd apex_art_data_file:file unlink;
22
23# Access our APEX data files
24allow composd apex_module_data_file:dir search;
25allow composd apex_compos_data_file:dir create_dir_perms;
26allow composd apex_compos_data_file:file create_file_perms;
27
28# Run fd_server in its own domain, and send SIGTERM when finished.
29domain_auto_trans(composd, fd_server_exec, compos_fd_server)
30allow composd compos_fd_server:process signal;
31
32# Read ART's properties
33get_prop(composd, dalvik_config_prop)
34get_prop(composd, device_config_runtime_native_boot_prop)
35
36# We never create any artifact files directly
37neverallow composd apex_art_data_file:file ~unlink;
38