Create a new location for /data policy files
Adding a new location for policy files under
/data, the new location is /data/security. The
new location is used before attempting to use
any other location.
This requires a new directory to be created by
the init script and an update to the location of
the property_contexts file for property service.
Change-Id: I955a722ac3e51fa6c1b97201b8bdef3f601cf09d
diff --git a/init/init.c b/init/init.c
index bfaf983..ede2daa 100755
--- a/init/init.c
+++ b/init/init.c
@@ -745,6 +745,7 @@
#endif
static const struct selinux_opt seopts_prop[] = {
+ { SELABEL_OPT_PATH, "/data/security/property_contexts" },
{ SELABEL_OPT_PATH, "/data/system/property_contexts" },
{ SELABEL_OPT_PATH, "/property_contexts" },
{ 0, NULL }
diff --git a/rootdir/init.rc b/rootdir/init.rc
index 257407a..55ee03d 100644
--- a/rootdir/init.rc
+++ b/rootdir/init.rc
@@ -246,6 +246,9 @@
# symlink to bugreport storage location
symlink /data/data/com.android.shell/files/bugreports /data/bugreports
+ # Separate location for storing security policy files on data
+ mkdir /data/security 0600 system system
+
# If there is no fs-post-data action in the init.<device>.rc file, you
# must uncomment this line, otherwise encrypted filesystems
# won't work.