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
25 lines
792 B
Text
25 lines
792 B
Text
typeattribute incident coredomain;
|
|
|
|
type incident_exec, exec_type, file_type;
|
|
|
|
# switch to incident domain for incident command
|
|
domain_auto_trans(shell, incident_exec, incident)
|
|
|
|
# allow incident access to stdout from its parent shell.
|
|
allow incident shell:fd use;
|
|
|
|
# allow incident to communicate use, read and write over the adb
|
|
# connection.
|
|
allow incident adbd:fd use;
|
|
allow incident adbd:unix_stream_socket { read write };
|
|
|
|
# allow adbd to reap incident
|
|
allow incident adbd:process { sigchld };
|
|
|
|
# Allow the incident command to talk to the incidentd over the binder, and get
|
|
# back the incident report data from a ParcelFileDescriptor.
|
|
binder_use(incident)
|
|
allow incident incident_service:service_manager find;
|
|
binder_call(incident, incidentd)
|
|
allow incident incidentd:fifo_file write;
|
|
|