diff options
author | Arve Hjnnevg <arve@android.com> | 2016-08-19 01:04:30 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2016-08-19 01:04:30 +0000 |
commit | fa5aafc9f3f32175e1442fe2940a02805eb76c8a (patch) | |
tree | ed5f384bc43faa2df941bf747d2dd1b434afc1ad | |
parent | 1414d7b372fa44b3a3cae075ab6aed14e4277987 (diff) | |
parent | 2c39ea10255c4cddf3e97fd00c2aa1548bc54c4f (diff) | |
download | native-fa5aafc9f3f32175e1442fe2940a02805eb76c8a.tar.gz |
ServiceManager: Allow system services running as secondary users to add services am: e6bbe69ba7 am: 2cb14836ac am: c29c3734af am: ce0e72911c
am: 2c39ea1025
Change-Id: I355431fb0c566965759cd3d07d481c475cb494d0
-rw-r--r-- | cmds/servicemanager/Android.mk | 2 | ||||
-rw-r--r-- | cmds/servicemanager/service_manager.c | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/cmds/servicemanager/Android.mk b/cmds/servicemanager/Android.mk index 155cfc503e..5bafd53438 100644 --- a/cmds/servicemanager/Android.mk +++ b/cmds/servicemanager/Android.mk @@ -18,7 +18,7 @@ LOCAL_MODULE_TAGS := optional include $(BUILD_EXECUTABLE) include $(CLEAR_VARS) -LOCAL_SHARED_LIBRARIES := liblog libselinux +LOCAL_SHARED_LIBRARIES := liblog libcutils libselinux LOCAL_SRC_FILES := service_manager.c binder.c LOCAL_CFLAGS += $(svc_c_flags) LOCAL_MODULE := servicemanager diff --git a/cmds/servicemanager/service_manager.c b/cmds/servicemanager/service_manager.c index 4c993c2361..031f848970 100644 --- a/cmds/servicemanager/service_manager.c +++ b/cmds/servicemanager/service_manager.c @@ -8,6 +8,8 @@ #include <stdlib.h> #include <string.h> +#include <cutils/multiuser.h> + #include <private/android_filesystem_config.h> #include <selinux/android.h> @@ -111,7 +113,7 @@ static int svc_can_register(const uint16_t *name, size_t name_len, pid_t spid, u { const char *perm = "add"; - if (uid >= AID_APP) { + if (multiuser_get_app_id(uid) >= AID_APP) { return 0; /* Don't allow apps to register services */ } |