diff options
author | Nick Kralevich <nnk@google.com> | 2014-05-31 05:05:52 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-05-31 05:05:52 +0000 |
commit | 6fb92bd84bea3c5efadd891f1853fef7c811e79d (patch) | |
tree | 1aee67e926f66adccd037afee570b470aa660d53 | |
parent | e8f90ca60d65f5a0542b77f8f517c4fb80da2e52 (diff) | |
parent | 252b0e2b46e3d5e71a8b5c55928dc9ca62811f0a (diff) | |
download | system_core-6fb92bd84bea3c5efadd891f1853fef7c811e79d.zip system_core-6fb92bd84bea3c5efadd891f1853fef7c811e79d.tar.gz system_core-6fb92bd84bea3c5efadd891f1853fef7c811e79d.tar.bz2 |
am 252b0e2b: Merge "SELinux changes to check policy versions during a reload."
* commit '252b0e2b46e3d5e71a8b5c55928dc9ca62811f0a':
SELinux changes to check policy versions during a reload.
-rw-r--r-- | init/init.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/init/init.c b/init/init.c index 1538aa6..7ba25dc 100644 --- a/init/init.c +++ b/init/init.c @@ -841,24 +841,21 @@ static int bootchart_init_action(int nargs, char **args) static const struct selinux_opt seopts_prop[] = { { SELABEL_OPT_PATH, "/property_contexts" }, + { SELABEL_OPT_PATH, "/data/security/current/property_contexts" }, { 0, NULL } }; struct selabel_handle* selinux_android_prop_context_handle(void) { - int i = 0; - struct selabel_handle* sehandle = NULL; - while ((sehandle == NULL) && seopts_prop[i].value) { - sehandle = selabel_open(SELABEL_CTX_ANDROID_PROP, &seopts_prop[i], 1); - i++; - } - + int policy_index = selinux_android_use_data_policy() ? 1 : 0; + struct selabel_handle* sehandle = selabel_open(SELABEL_CTX_ANDROID_PROP, + &seopts_prop[policy_index], 1); if (!sehandle) { ERROR("SELinux: Could not load property_contexts: %s\n", strerror(errno)); return NULL; } - INFO("SELinux: Loaded property contexts from %s\n", seopts_prop[i - 1].value); + INFO("SELinux: Loaded property contexts from %s\n", seopts_prop[policy_index].value); return sehandle; } |