1typeattribute logpersist coredomain; 2 3# android debug log storage in logpersist domains (eng and userdebug only) 4userdebug_or_eng(` 5 6 r_dir_file(logpersist, cgroup) 7 r_dir_file(logpersist, cgroup_v2) 8 9 allow logpersist misc_logd_file:file create_file_perms; 10 allow logpersist misc_logd_file:dir rw_dir_perms; 11 12 allow logpersist self:global_capability_class_set sys_nice; 13 allow logpersist pstorefs:dir search; 14 allow logpersist pstorefs:file r_file_perms; 15 16 control_logd(logpersist) 17 unix_socket_connect(logpersist, logdr, logd) 18 read_runtime_log_tags(logpersist) 19 20') 21 22# logpersist is allowed to write to /data/misc/log for userdebug and eng builds 23neverallow logpersist { 24 file_type 25 userdebug_or_eng(`-misc_logd_file -coredump_file') 26 with_native_coverage(`-method_trace_data_file') 27}:file { create write append }; 28neverallow { domain -init -dumpstate -incidentd userdebug_or_eng(`-logpersist -logd') } misc_logd_file:file no_rw_file_perms; 29neverallow { domain -init userdebug_or_eng(`-logpersist -logd') } misc_logd_file:file no_w_file_perms; 30neverallow { domain -init userdebug_or_eng(`-logpersist -logd') } misc_logd_file:dir { add_name link relabelfrom remove_name rename reparent rmdir write }; 31