xref: /aosp_15_r20/system/sepolicy/private/traceur_app.te (revision e4a36f4174b17bbab9dc043f4a65dc8d87377290)
1*e4a36f41SAndroid Build Coastguard Workertypeattribute traceur_app coredomain;
2*e4a36f41SAndroid Build Coastguard Worker
3*e4a36f41SAndroid Build Coastguard Workerapp_domain(traceur_app);
4*e4a36f41SAndroid Build Coastguard Workerallow traceur_app debugfs_tracing:file rw_file_perms;
5*e4a36f41SAndroid Build Coastguard Workerallow traceur_app debugfs_tracing_debug:dir r_dir_perms;
6*e4a36f41SAndroid Build Coastguard Worker
7*e4a36f41SAndroid Build Coastguard Workeruserdebug_or_eng(`
8*e4a36f41SAndroid Build Coastguard Worker  allow traceur_app debugfs_tracing_debug:file rw_file_perms;
9*e4a36f41SAndroid Build Coastguard Worker')
10*e4a36f41SAndroid Build Coastguard Worker
11*e4a36f41SAndroid Build Coastguard Workerallow traceur_app trace_data_file:file create_file_perms;
12*e4a36f41SAndroid Build Coastguard Workerallow traceur_app trace_data_file:dir rw_dir_perms;
13*e4a36f41SAndroid Build Coastguard Workerallow traceur_app wm_trace_data_file:dir rw_dir_perms;
14*e4a36f41SAndroid Build Coastguard Workerallow traceur_app wm_trace_data_file:file { getattr r_file_perms unlink };
15*e4a36f41SAndroid Build Coastguard Workerallow traceur_app atrace_exec:file rx_file_perms;
16*e4a36f41SAndroid Build Coastguard Worker
17*e4a36f41SAndroid Build Coastguard Worker# To exec the perfetto cmdline client and pass it the trace config on
18*e4a36f41SAndroid Build Coastguard Worker# stdint through a pipe.
19*e4a36f41SAndroid Build Coastguard Workerallow traceur_app perfetto_exec:file rx_file_perms;
20*e4a36f41SAndroid Build Coastguard Worker
21*e4a36f41SAndroid Build Coastguard Worker# Allow to access traced's privileged consumer socket.
22*e4a36f41SAndroid Build Coastguard Workerunix_socket_connect(traceur_app, traced_consumer, traced)
23*e4a36f41SAndroid Build Coastguard Worker
24*e4a36f41SAndroid Build Coastguard Workerdontaudit traceur_app debugfs_tracing_debug:file audit_access;
25*e4a36f41SAndroid Build Coastguard Worker
26*e4a36f41SAndroid Build Coastguard Workerset_prop(traceur_app, debug_prop)
27*e4a36f41SAndroid Build Coastguard Worker
28*e4a36f41SAndroid Build Coastguard Workerallow traceur_app servicemanager:service_manager list;
29*e4a36f41SAndroid Build Coastguard Workerallow traceur_app hwservicemanager:hwservice_manager list;
30*e4a36f41SAndroid Build Coastguard Worker
31*e4a36f41SAndroid Build Coastguard Workerallow traceur_app {
32*e4a36f41SAndroid Build Coastguard Worker  service_manager_type
33*e4a36f41SAndroid Build Coastguard Worker  -apex_service
34*e4a36f41SAndroid Build Coastguard Worker  -dnsresolver_service
35*e4a36f41SAndroid Build Coastguard Worker  -gatekeeper_service
36*e4a36f41SAndroid Build Coastguard Worker  -incident_service
37*e4a36f41SAndroid Build Coastguard Worker  -installd_service
38*e4a36f41SAndroid Build Coastguard Worker  -lpdump_service
39*e4a36f41SAndroid Build Coastguard Worker  -mdns_service
40*e4a36f41SAndroid Build Coastguard Worker  -netd_service
41*e4a36f41SAndroid Build Coastguard Worker  -virtual_touchpad_service
42*e4a36f41SAndroid Build Coastguard Worker  -vold_service
43*e4a36f41SAndroid Build Coastguard Worker  -default_android_service
44*e4a36f41SAndroid Build Coastguard Worker}:service_manager find;
45*e4a36f41SAndroid Build Coastguard Worker
46*e4a36f41SAndroid Build Coastguard Worker# Allow traceur_app to use atrace HAL
47*e4a36f41SAndroid Build Coastguard Workerhal_client_domain(traceur_app, hal_atrace)
48*e4a36f41SAndroid Build Coastguard Worker
49*e4a36f41SAndroid Build Coastguard Workerdontaudit traceur_app service_manager_type:service_manager find;
50*e4a36f41SAndroid Build Coastguard Workerdontaudit traceur_app hwservice_manager_type:hwservice_manager find;
51*e4a36f41SAndroid Build Coastguard Workerdontaudit traceur_app domain:binder call;
52