summaryrefslogtreecommitdiffstats
path: root/common/diag.te
blob: deff2b4fbc6917c149cbeaf54fde98a6a57e80c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
type diag, domain, domain_deprecated;
type diag_exec, exec_type, file_type;
userdebug_or_eng(`
  domain_auto_trans(shell, diag_exec, diag)
  domain_auto_trans(adbd, diag_exec, diag)
  file_type_auto_trans(diag, system_data_file, diag_data_file);
  allow diag {
      diag_device
      devpts
      console_device
      # allow access to qseecom for drmdiagapp
      tee_device
  }:chr_file rw_file_perms;
  allow diag {
      shell
      su
  }:fd use;

  allow diag {
      cgroup
      fuse
      persist_drm_file
  }:dir create_dir_perms;

  allow diag port:tcp_socket name_connect;
  allow diag self:capability { setuid net_raw sys_admin setgid dac_override };
  allow diag self:capability2 syslog;
  allow diag self:tcp_socket { create connect setopt};
  wakelock_use(diag)
  allow diag kernel:system syslog_mod;
  # allow drmdiagapp access to drm related paths
  allow diag persist_file:dir r_dir_perms;
  r_dir_file(diag, persist_data_file)
  # Write to drm related pieces of persist partition
  allow diag persist_drm_file:file create_file_perms;
')