blob: 699cc7e268e3879f808aec6d3b4f1602170b5f5d [file] [log] [blame]
# ==============================================
# Common SEPolicy Rule
# ==============================================
type mdlogger_exec , system_file_type, exec_type, file_type;
typeattribute mdlogger coredomain;
typeattribute mdlogger mlstrustedsubject;
init_daemon_domain(mdlogger)
binder_use(mdlogger)
binder_service(mdlogger)
# modem logger socket access
allow mdlogger platform_app:unix_stream_socket connectto;
allow mdlogger shell_exec:file rx_file_perms;
allow mdlogger system_file:file x_file_perms;
allow mdlogger zygote_exec:file r_file_perms;
allow mdlogger node:tcp_socket node_bind;
allow mdlogger port:tcp_socket name_bind;
allow mdlogger self:tcp_socket create_stream_socket_perms;
#modem logger SD logging in factory mode
allow mdlogger vfat:dir create_dir_perms;
allow mdlogger vfat:file create_file_perms;
allow mdlogger tmpfs:lnk_file r_file_perms;
allow mdlogger storage_file:lnk_file rw_file_perms;
allow mdlogger mnt_user_file:dir search;
allow mdlogger mnt_user_file:lnk_file rw_file_perms;
allow mdlogger sdcard_type:file create_file_perms;
allow mdlogger sdcard_type:dir create_dir_perms;
# purpose: allow mdlogger to access storage in new version
allow mdlogger media_rw_data_file:file create_file_perms;
allow mdlogger media_rw_data_file:dir create_dir_perms;
allow mdlogger storage_file:dir create_dir_perms;
allow mdlogger storage_file:file create_file_perms;
## purpose: avc: denied { read } for name="plat_file_contexts"
allow mdlogger file_contexts_file:file r_file_perms;
# Allow read avc: denied { read } for name="mddb" dev="mmcblk0p25" ino=681
# scontext=u:r:mdlogger:s0 tcontext=u:object_r:system_file:s0 tclass=dir permissive=0
allow mdlogger system_file:dir r_dir_perms;
# Android P migration
set_prop(mdlogger, system_mtk_mdl_prop)
set_prop(mdlogger, system_mtk_persist_mdlog_prop)
set_prop(mdlogger, system_mtk_persist_mtklog_prop)
## Android Q migration
## purpose: read modem db and filter folder and file
allow mdlogger mddb_filter_data_file:dir r_dir_perms;
allow mdlogger mddb_filter_data_file:file r_file_perms;
## Save modem log into data
allow mdlogger debuglog_data_file:dir {relabelto create_dir_perms};
allow mdlogger debuglog_data_file:file create_file_perms;
#allow mdlogger to set property
set_prop(mdlogger, system_mtk_debug_mdlogger_prop)
set_prop(mdlogger, debug_prop)