Allow goldfish-setup to put the emulator in WiFi-only mode

The goldfish-setup service (essentially /system/etc/init.goldfish.sh)
executes the following commands when certain conditions are met:

 setprop ro.radio.noril yes
 stop ril-daemon

so as to stop the RIL daemon and emulate a WiFi-only device. Both would
fail, though, because goldfish-setup does not have the permissions to
set relevant properties.

This CL modifies the emulator's SELinux policy to grant the necessary
permissions. It is a step towards fixing the ril-daemon-keeps-getting-
killed-and-restarted problem with the new ("ranchu") emulator, which
does not support telephony emulation yet. (The other step is to have
init start goldfish-setup, which will be done in a seperate CL.)

(cherrypicked from commit 33dca8090f)

Change-Id: Ice7e7898804b7353ac4a8c49d871b1b2571d7a5f
Signed-off-by: Yu Ning <yu.ning@intel.com>
This commit is contained in:
Yu Ning 2015-05-18 17:11:37 +08:00 committed by Nick Kralevich
parent c434f71bd8
commit 0f54ada1cd
3 changed files with 9 additions and 0 deletions

View File

@ -15,3 +15,10 @@ allow goldfish_setup self:udp_socket create_socket_perms;
# Set net.eth0.dns*, debug.sf.nobootanimation
set_prop(goldfish_setup, system_prop)
set_prop(goldfish_setup, debug_prop)
# Set ro.radio.noril
set_prop(goldfish_setup, radio_noril_prop)
# Stop ril-daemon service (by setting ctl.stop to ril-daemon, which
# transforms to a permission check on ctl.ril-daemon).
set_prop(goldfish_setup, ctl_rildaemon_prop)

View File

@ -1 +1,2 @@
type qemu_prop, property_type;
type radio_noril_prop, property_type;

View File

@ -1 +1,2 @@
qemu. u:object_r:qemu_prop:s0
radio.noril u:object_r:radio_noril_prop:s0