summaryrefslogtreecommitdiffstats
path: root/common/mediaserver.te
blob: 1108551e9bd75f41ae4ef2c342eb7a453401edba (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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# allow mediaserver to communicate with cnd
#unix_socket_connect(mediaserver, cnd, cnd)

#unix_socket_send(mediaserver, camera, mm-qcamerad)

allow mediaserver tee_device:chr_file rw_file_perms;
allow mediaserver qdsp_device:chr_file r_file_perms;

allow mediaserver self:socket create_socket_perms_no_ioctl;

binder_call(mediaserver, rild)

#qmux_socket(mediaserver)
allow mediaserver camera_data_file:sock_file w_file_perms;

userdebug_or_eng(`
  allow mediaserver camera_data_file:dir rw_dir_perms;
  allow mediaserver camera_data_file:file create_file_perms;
  # Access to audio
  allow mediaserver qti_debugfs:file rw_file_perms;
')

r_dir_file(mediaserver, sysfs_esoc)
#allow mediaserver system_app_data_file:file rw_file_perms;

# allow mediaserver to write DTS files
allow mediaserver dts_data_file:dir rw_dir_perms;
allow mediaserver dts_data_file:file create_file_perms;

# allow poweroffhandler to binder mediaserver
binder_call(mediaserver, poweroffhandler);


# for thermal sock files
#unix_socket_connect(mediaserver, thermal, thermal-engine)

#This is required for thermal sysfs access
r_dir_file(mediaserver, sysfs_thermal);

#allow mediaserver to communicate with timedaemon
#allow mediaserver time_daemon:unix_stream_socket connectto;

# Allow mediaserver to create socket files for audio arbitration
allow mediaserver audio_data_file:sock_file { create setattr unlink };
allow mediaserver audio_data_file:dir remove_name;

# Allow mediaserver to create audio pp files
allow mediaserver audio_pp_data_file:dir rw_dir_perms;
allow mediaserver audio_pp_data_file:file create_file_perms;

#Allow mediaserver to set camera  properties
set_prop(mediaserver, camera_prop)

#Allow mediaserver access mmi_data_file
allow mediaserver mmi_data_file:file r_file_perms;

#allow mediaserver to access wfdservice
binder_call(mediaserver, wfdservice)

#allow mediaserver to access adsprpcd
r_dir_file(mediaserver, adsprpcd_file);

# allow mediaserver to communicate with bootanim
binder_call(mediaserver, bootanim);

allow mediaserver surfaceflinger:unix_stream_socket rw_socket_perms;