diff options
author | Jeff Sharkey <jsharkey@android.com> | 2015-06-09 23:30:04 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-06-09 23:30:09 +0000 |
commit | 4d7f052afbaf79c7324a2e9dd51168990b062647 (patch) | |
tree | 9fbabd069314fbdf2fc1b42f007b19fbcddfe977 | |
parent | c26e391dc4d5643fd6a84467dd09efc7e4757a6c (diff) | |
parent | 76417519ec7b361604f4977b9ad238d0a276c49d (diff) | |
download | system_core-4d7f052afbaf79c7324a2e9dd51168990b062647.zip system_core-4d7f052afbaf79c7324a2e9dd51168990b062647.tar.gz system_core-4d7f052afbaf79c7324a2e9dd51168990b062647.tar.bz2 |
Merge "New "selinux.restorecon" control property." into mnc-dev
-rw-r--r-- | init/property_service.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/init/property_service.cpp b/init/property_service.cpp index 0ee0351..c2881ae 100644 --- a/init/property_service.cpp +++ b/init/property_service.cpp @@ -205,6 +205,16 @@ static int property_set_impl(const char* name, const char* value) { if (!is_legal_property_name(name, namelen)) return -1; if (valuelen >= PROP_VALUE_MAX) return -1; + if (strcmp("selinux.reload_policy", name) == 0 && strcmp("1", value) == 0) { + if (selinux_reload_policy() != 0) { + ERROR("Failed to reload policy\n"); + } + } else if (strcmp("selinux.restorecon_recursive", name) == 0 && valuelen > 0) { + if (restorecon_recursive(value) != 0) { + ERROR("Failed to restorecon_recursive %s\n", value); + } + } + prop_info* pi = (prop_info*) __system_property_find(name); if(pi != 0) { @@ -236,9 +246,6 @@ static int property_set_impl(const char* name, const char* value) { * to prevent them from being overwritten by default values. */ write_persistent_property(name, value); - } else if (strcmp("selinux.reload_policy", name) == 0 && - strcmp("1", value) == 0) { - selinux_reload_policy(); } property_changed(name, value); return 0; |