type sysinit, coredomain, domain;
type sysinit_exec, exec_type, file_type;

# Allow for transition from init domain to sysinit
init_daemon_domain(sysinit)
neverallow { domain -init } sysinit:process transition;

userdebug_or_eng(`
    permissive sysinit;
')
