universal7885: Adapt SELinux rules to match our A20/A20e's needs

* Additionally, adapt LineageOS's rules too

Change-Id: Ie253afd9052c700705861d618253445ef4b8c728
Signed-off-by: roynatech2544 <whiteshell2544@naver.com>
This commit is contained in:
roynatech2544 2021-10-21 23:04:54 +09:00
commit 9506c382c4
No known key found for this signature in database
GPG key ID: 9675C32163D88D30
82 changed files with 1108 additions and 98 deletions

View file

@ -0,0 +1,8 @@
# teegris_use(domain)
#
# Allow domain to use teegris
define(`teegris_use', `
get_prop($1, vendor_tztsdaemon_prop)
# /dev/tzdev
allow $1 tz_user_device:chr_file rw_file_perms;
')

View file

@ -0,0 +1,4 @@
# device.te
type tz_device, dev_type;
type tz_user_device, dev_type;

View file

@ -0,0 +1,7 @@
# file.te
# DATA
type tee_vendor_data_file, file_type, data_file_type;
# DEV SOCKET
type tz_socket, file_type;

View file

@ -0,0 +1,18 @@
# file_contexts
# DATA
/data/vendor/tee(/.*)? u:object_r:tee_vendor_data_file:s0
# DEV
/dev/socket/tz u:object_r:tz_socket:s0
/dev/tuihw u:object_r:tz_device:s0
/dev/tzdev u:object_r:tz_user_device:s0
/dev/tzic u:object_r:tz_device:s0
/dev/tzirs u:object_r:tz_device:s0
/dev/tziwsock u:object_r:tz_user_device:s0
# VENDOR
/(vendor|system/vendor)/bin/tzdaemon u:object_r:tzdaemon_exec:s0
/(vendor|system/vendor)/bin/tzts_daemon u:object_r:tztsdaemon_exec:s0
/(vendor|system/vendor)/lib(64)?/libteecl\.so u:object_r:same_process_hal_file:s0

View file

@ -0,0 +1,3 @@
# hal_fingerprint_default.te
teegris_use(hal_fingerprint_default)

View file

@ -0,0 +1 @@
teegris_use(hal_gatekeeper_default)

View file

@ -0,0 +1 @@
teegris_use(hal_keymaster_default)

View file

@ -0,0 +1,4 @@
# property.te
type vendor_secureos_prop, property_type;
type vendor_tzdaemon_prop, property_type;
type vendor_tztsdaemon_prop, property_type;

View file

@ -0,0 +1,6 @@
# property_contexts
# TEEGRIS
vendor.secureos. u:object_r:vendor_secureos_prop:s0
vendor.tzdaemon u:object_r:vendor_tzdaemon_prop:s0
vendor.tzts_daemon u:object_r:vendor_tztsdaemon_prop:s0

View file

@ -0,0 +1,33 @@
type tzdaemon, domain;
type tzdaemon_exec, exec_type, vendor_file_type, file_type;
# tzdaemon is started by init, type transit from init domain to tzdaemon domain
init_daemon_domain(tzdaemon)
set_prop(tzdaemon, vendor_tzdaemon_prop)
set_prop(tzdaemon, vendor_secureos_prop)
allow tzdaemon tz_device:chr_file rw_file_perms;
allow tzdaemon tz_user_device:chr_file rw_file_perms;
allow tzdaemon tz_socket:sock_file { write };
# /dev/kmsg
allow tzdaemon kmsg_device:chr_file rw_file_perms;
# /data/vendor/tee
allow tzdaemon tee_vendor_data_file:dir create_dir_perms;
allow tzdaemon tee_vendor_data_file:file create_file_perms;
# /proc/stat
allow tzdaemon proc_stat:file r_file_perms;
# /efs
allow tzdaemon efs_file:dir r_dir_perms;
# /efs/tee/
# /mnt/vendor/efs/tee/
allow tzdaemon tee_efs_file:dir create_dir_perms;
allow tzdaemon tee_efs_file:file create_file_perms;
# /mnt/vendor/
allow tzdaemon mnt_vendor_file:dir r_dir_perms;

View file

@ -0,0 +1,10 @@
type tztsdaemon, domain;
type tztsdaemon_exec, exec_type, vendor_file_type, file_type;
# tztsdaemon is started by init, type transit from init domain to tztsdaemon domain
init_daemon_domain(tztsdaemon)
set_prop(tztsdaemon, vendor_tztsdaemon_prop)
# /dev/tziwsock
allow tztsdaemon tz_user_device:chr_file rw_file_perms;