f5446eb148
On PRODUCT_FULL_TREBLE devices, non-vendor domains (except vendor apps) are not permitted to use Binder. This commit thus: * groups non-vendor domains using the new "coredomain" attribute, * adds neverallow rules restricting Binder use to coredomain and appdomain only, and * temporarily exempts the domains which are currently violating this rule from this restriction. These domains are grouped using the new "binder_in_vendor_violators" attribute. The attribute is needed because the types corresponding to violators are not exposed to the public policy where the neverallow rules are. Test: mmm system/sepolicy Test: Device boots, no new denials Test: In Chrome, navigate to ip6.me, play a YouTube video Test: YouTube: play a video Test: Netflix: play a movie Test: Google Camera: take a photo, take an HDR+ photo, record video with sound, record slow motion video with sound. Confirm videos play back fine and with sound. Bug: 35870313 Change-Id: I0cd1a80b60bcbde358ce0f7a47b90f4435a45c95
22 lines
725 B
Text
22 lines
725 B
Text
typeattribute dumpstate coredomain;
|
|
|
|
init_daemon_domain(dumpstate)
|
|
|
|
# Execute and transition to the vdc domain
|
|
domain_auto_trans(dumpstate, vdc_exec, vdc)
|
|
|
|
# TODO: deal with tmpfs_domain pub/priv split properly
|
|
allow dumpstate dumpstate_tmpfs:file execute;
|
|
|
|
# systrace support - allow atrace to run
|
|
allow dumpstate debugfs_tracing:dir r_dir_perms;
|
|
allow dumpstate debugfs_tracing:file rw_file_perms;
|
|
allow dumpstate debugfs_trace_marker:file getattr;
|
|
allow dumpstate atrace_exec:file rx_file_perms;
|
|
allow dumpstate storaged_exec:file rx_file_perms;
|
|
|
|
# Allow dumpstate to make binder calls to storaged service
|
|
binder_call(dumpstate, storaged)
|
|
|
|
# Collect metrics on boot time created by init
|
|
get_prop(dumpstate, boottime_prop)
|