summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorStephen Smalley <sds@tycho.nsa.gov>2014-01-13 09:44:42 -0500
committerStephen Smalley <sds@tycho.nsa.gov>2014-01-13 14:00:36 -0500
commit2c9d5b2839307987812db8a939d88272b865bacc (patch)
tree7658af5f834b79b53c4752b4d743ae4da03032d4 /etc
parent617d1cadc6e0e1e9fd46e0e6a8505f6f7f56a5f7 (diff)
downloadbootable_recovery-2c9d5b2839307987812db8a939d88272b865bacc.zip
bootable_recovery-2c9d5b2839307987812db8a939d88272b865bacc.tar.gz
bootable_recovery-2c9d5b2839307987812db8a939d88272b865bacc.tar.bz2
Set SELinux security contexts correctly for init and services.
Otherwise everything is left running in the kernel domain when booting recovery. Change-Id: Ie3d86547d5be0b68dd1875a97afe1e00fc3e4da1 Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Diffstat (limited to 'etc')
-rw-r--r--etc/init.rc11
1 files changed, 11 insertions, 0 deletions
diff --git a/etc/init.rc b/etc/init.rc
index 1754890..5f9ce80 100644
--- a/etc/init.rc
+++ b/etc/init.rc
@@ -1,6 +1,13 @@
import /init.recovery.${ro.hardware}.rc
on early-init
+ # Apply strict SELinux checking of PROT_EXEC on mmap/mprotect calls.
+ write /sys/fs/selinux/checkreqprot 0
+
+ # Set the security context for the init process.
+ # This should occur before anything else (e.g. ueventd) is started.
+ setcon u:r:init:s0
+
start ueventd
start healthd
@@ -43,15 +50,19 @@ on property:sys.powerctl=*
service ueventd /sbin/ueventd
critical
+ seclabel u:r:ueventd:s0
service healthd /sbin/healthd -n
critical
+ seclabel u:r:healthd:s0
service recovery /sbin/recovery
+ seclabel u:r:recovery:s0
service adbd /sbin/adbd recovery
disabled
socket adbd stream 660 system system
+ seclabel u:r:adbd:s0
# Always start adbd on userdebug and eng builds
on property:ro.debuggable=1