Skip to content
Snippets Groups Projects
Commit e41af203 authored by Sandeep Patil's avatar Sandeep Patil
Browse files

Fix coredomain violation for modprobe


modprobe domain was allowed to launch vendor toolbox even if its a
coredomain. That violates the treble separation. Fix that by creating a
separate 'vendor_modprobe' domain that init is allowed to transition to
through vendor_toolbox.

Bug: 37008075
Test: Build and boot sailfish

Change-Id: Ic3331797691bb5d1fdc05a674aa4aa313e1f86b2
Signed-off-by: default avatarSandeep Patil <sspatil@google.com>
(cherry picked from commit 9e366a0e)
parent bdfc0301
No related branches found
No related tags found
No related merge requests found
...@@ -13,7 +13,7 @@ recovery_only(` ...@@ -13,7 +13,7 @@ recovery_only(`
domain_trans(init, shell_exec, shell) domain_trans(init, shell_exec, shell)
domain_trans(init, init_exec, ueventd) domain_trans(init, init_exec, ueventd)
domain_trans(init, init_exec, watchdogd) domain_trans(init, init_exec, watchdogd)
domain_trans(init, { rootfs toolbox_exec vendor_toolbox_exec }, modprobe) domain_trans(init, { rootfs toolbox_exec }, modprobe)
# case where logpersistd is actually logcat -f in logd context (nee: logcatd) # case where logpersistd is actually logcat -f in logd context (nee: logcatd)
userdebug_or_eng(` userdebug_or_eng(`
domain_auto_trans(init, logcat_exec, logpersist) domain_auto_trans(init, logcat_exec, logpersist)
......
...@@ -7,5 +7,5 @@ recovery_only(` ...@@ -7,5 +7,5 @@ recovery_only(`
allow modprobe rootfs:system module_load; allow modprobe rootfs:system module_load;
allow modprobe rootfs:file r_file_perms; allow modprobe rootfs:file r_file_perms;
') ')
allow modprobe { system_file vendor_file }:system module_load; allow modprobe { system_file }:system module_load;
r_dir_file(modprobe, { system_file vendor_file }) r_dir_file(modprobe, { system_file })
type vendor_modprobe, domain;
# For the use of /vendor/bin/modprobe from vendor init.rc fragments
domain_trans(init, vendor_toolbox_exec, vendor_modprobe)
allow vendor_modprobe proc_modules:file r_file_perms;
allow vendor_modprobe self:capability sys_module;
allow vendor_modprobe kernel:key search;
allow vendor_modprobe { vendor_file }:system module_load;
r_dir_file(vendor_modprobe, { vendor_file })
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment