Skip to content
Snippets Groups Projects
Commit bd3e300a authored by Nick Kralevich's avatar Nick Kralevich
Browse files

Relax some neverallow rules

Kernels above 4.14 have a new mmap permission. However, neverallow rules
exclude the use of mmap, even when file FDs are passable across the
vendor/non-vendor boundary. Since we allow reading / writing of passed
file descriptors, also allow the use of mmap for passed file
descriptors.

Bug: 112171217
Test: policy compiles
Change-Id: I8176f86960bdff0cf5de770809510e9df5d62db9
parent d90d001a
No related branches found
No related tags found
No related merge requests found
...@@ -819,7 +819,7 @@ full_treble_only(` ...@@ -819,7 +819,7 @@ full_treble_only(`
} { } {
data_file_type data_file_type
-core_data_file_type -core_data_file_type
}:file_class_set ~{ append getattr ioctl read write }; }:file_class_set ~{ append getattr ioctl read write map };
') ')
full_treble_only(` full_treble_only(`
neverallow { neverallow {
...@@ -851,7 +851,7 @@ full_treble_only(` ...@@ -851,7 +851,7 @@ full_treble_only(`
# files in /data/misc/zoneinfo/tzdata file. These functions are considered # files in /data/misc/zoneinfo/tzdata file. These functions are considered
# vndk-stable and thus must be allowed for all processes. # vndk-stable and thus must be allowed for all processes.
-zoneinfo_data_file -zoneinfo_data_file
}:file_class_set ~{ append getattr ioctl read write }; }:file_class_set ~{ append getattr ioctl read write map };
neverallow { neverallow {
vendor_init vendor_init
-data_between_core_and_vendor_violators -data_between_core_and_vendor_violators
...@@ -859,7 +859,7 @@ full_treble_only(` ...@@ -859,7 +859,7 @@ full_treble_only(`
core_data_file_type core_data_file_type
-unencrypted_data_file -unencrypted_data_file
-zoneinfo_data_file -zoneinfo_data_file
}:file_class_set ~{ append getattr ioctl read write }; }:file_class_set ~{ append getattr ioctl read write map };
# vendor init needs to be able to read unencrypted_data_file to create directories with FBE. # vendor init needs to be able to read unencrypted_data_file to create directories with FBE.
# The vendor init binary lives on the system partition so there is not a concern with stability. # The vendor init binary lives on the system partition so there is not a concern with stability.
neverallow vendor_init unencrypted_data_file:file ~r_file_perms; neverallow vendor_init unencrypted_data_file:file ~r_file_perms;
...@@ -925,7 +925,7 @@ full_treble_only(` ...@@ -925,7 +925,7 @@ full_treble_only(`
-init -init
} { } {
vendor_data_file # default label for files on /data/vendor{,_ce,_de}. vendor_data_file # default label for files on /data/vendor{,_ce,_de}.
}:file_class_set ~{ append getattr ioctl read write }; }:file_class_set ~{ append getattr ioctl read write map };
') ')
# On TREBLE devices, a limited set of files in /vendor are accessible to # On TREBLE devices, a limited set of files in /vendor are accessible to
......
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