Loading cmds/servicemanager/service_manager.c +14 −16 Original line number Diff line number Diff line Loading @@ -169,16 +169,12 @@ uint16_t svcmgr_id[] = { uint32_t do_find_service(struct binder_state *bs, const uint16_t *s, size_t len, uid_t uid, pid_t spid) { struct svcinfo *si; struct svcinfo *si = find_svc(s, len); if (!svc_can_find(s, len, spid)) { ALOGE("find_service('%s') uid=%d - PERMISSION DENIED\n", str8(s, len), uid); if (!si || !si->handle) { return 0; } si = find_svc(s, len); //ALOGI("check_service('%s') handle = %x\n", str8(s, len), si ? si->handle : 0); if (si && si->handle) { if (!si->allow_isolated) { // If this service doesn't allow access from isolated processes, // then check the uid to see if it is isolated. Loading @@ -187,10 +183,12 @@ uint32_t do_find_service(struct binder_state *bs, const uint16_t *s, size_t len, return 0; } } return si->handle; } else { if (!svc_can_find(s, len, spid)) { return 0; } return si->handle; } int do_add_service(struct binder_state *bs, Loading Loading
cmds/servicemanager/service_manager.c +14 −16 Original line number Diff line number Diff line Loading @@ -169,16 +169,12 @@ uint16_t svcmgr_id[] = { uint32_t do_find_service(struct binder_state *bs, const uint16_t *s, size_t len, uid_t uid, pid_t spid) { struct svcinfo *si; struct svcinfo *si = find_svc(s, len); if (!svc_can_find(s, len, spid)) { ALOGE("find_service('%s') uid=%d - PERMISSION DENIED\n", str8(s, len), uid); if (!si || !si->handle) { return 0; } si = find_svc(s, len); //ALOGI("check_service('%s') handle = %x\n", str8(s, len), si ? si->handle : 0); if (si && si->handle) { if (!si->allow_isolated) { // If this service doesn't allow access from isolated processes, // then check the uid to see if it is isolated. Loading @@ -187,10 +183,12 @@ uint32_t do_find_service(struct binder_state *bs, const uint16_t *s, size_t len, return 0; } } return si->handle; } else { if (!svc_can_find(s, len, spid)) { return 0; } return si->handle; } int do_add_service(struct binder_state *bs, Loading