| ### |
| ### Untrusted apps. |
| ### |
| ### This file defines the rules for untrusted apps running with |
| ### 31 < targetSdkVersion <= 33. |
| ### |
| ### See public/untrusted_app.te for more information about which apps are |
| ### placed in this selinux domain. |
| ### |
| |
| typeattribute untrusted_app_32 coredomain; |
| |
| app_domain(untrusted_app_32) |
| untrusted_app_domain(untrusted_app_32) |
| net_domain(untrusted_app_32) |
| bluetooth_domain(untrusted_app_32) |
| |
| # Allow webview to access fd shared by sdksandbox for experiments data |
| # TODO(b/229249719): Will not be supported in Android U |
| allow untrusted_app_32 sdk_sandbox_data_file:fd use; |
| allow untrusted_app_32 sdk_sandbox_data_file:file write; |
| |
| neverallow untrusted_app_32 sdk_sandbox_data_file:file { open create }; |
| |
| # Connect to mdnsd via mdnsd socket. |
| unix_socket_connect(untrusted_app_32, mdnsd, mdnsd) |
| userdebug_or_eng(` |
| auditallow untrusted_app_32 mdnsd_socket:sock_file write; |
| auditallow untrusted_app_32 mdnsd:unix_stream_socket connectto; |
| ') |
| |
| # Allow calling inotify on APKs for backwards compatibility. This is disallowed |
| # for targetSdkVersion>=34 to remove a sidechannel. |
| allow untrusted_app_32 apk_data_file:dir { watch watch_reads }; |
| allow untrusted_app_32 apk_data_file:file { watch watch_reads }; |
| userdebug_or_eng(` |
| auditallow untrusted_app_32 apk_data_file:dir { watch watch_reads }; |
| auditallow untrusted_app_32 apk_data_file:file { watch watch_reads }; |
| ') |