zygote.te 1.48 KB
Newer Older
Stephen Smalley's avatar
Stephen Smalley committed
1 2 3 4 5 6 7 8
# zygote
type zygote, domain;
type zygote_exec, exec_type, file_type;

init_daemon_domain(zygote)
typeattribute zygote mlstrustedsubject;
# Override DAC on files and switch uid/gid.
allow zygote self:capability { dac_override setgid setuid };
9 10
# Drop capabilities from bounding set.
allow zygote self:capability setpcap;
Stephen Smalley's avatar
Stephen Smalley committed
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
# Switch SELinux context to app domains.
allow zygote system:process dyntransition;
allow zygote appdomain:process dyntransition;
# Move children into the peer process group.
allow zygote system:process { getpgid setpgid };
allow zygote appdomain:process { getpgid setpgid };
# Write to system data.
allow zygote system_data_file:dir rw_dir_perms;
allow zygote system_data_file:file create_file_perms;
allow zygote dalvikcache_data_file:dir rw_dir_perms;
allow zygote dalvikcache_data_file:file create_file_perms;
# Execute dexopt.
allow zygote system_file:file x_file_perms;
# Control cgroups.
allow zygote cgroup:dir create_dir_perms;
allow zygote self:capability sys_admin;
# Check validity of SELinux context before use.
selinux_check_context(zygote)
# Check SELinux permissions.
selinux_check_access(zygote)
# Read /seapp_contexts, presently on the rootfs.
allow zygote rootfs:file r_file_perms;

34 35
# Setting up /storage/emulated.
allow zygote rootfs:dir mounton;
36
allow zygote sdcard_type:dir { write search setattr create add_name mounton };
37
dontaudit zygote self:capability fsetid;
rpcraig's avatar
rpcraig committed
38
allow zygote tmpfs:dir { write create add_name setattr mounton search };
39
allow zygote tmpfs:filesystem mount;