Lines Matching refs:client

334             // Remove the client from the list of active clients
337 // Notify the client of disconnection
346 // Disconnect client
348 // Ensure not in binder RPC so client disconnect PID checks work correctly
754 /*out*/sp<BasicClient>* client) {
763 *client = new CameraClient(cameraService, tmp, packageName, cameraId, facing,
779 *client = new Camera2Client(cameraService, tmp, packageName, cameraId, facing,
784 *client = new CameraDeviceClient(cameraService, tmp, packageName, cameraId,
802 *client = new CameraClient(cameraService, tmp, packageName, cameraId, facing,
937 "forward camera access to camera %s for client %s (PID %d, UID %d)",
950 "forward camera access to camera %s for client %s (PID %d, UID %d)",
964 // Only use passed in clientPid to check permission. Use calling PID as the client PID that's
1034 void CameraService::finishConnectLocked(const sp<BasicClient>& client,
1037 // Make a descriptor for the incoming client
1038 auto clientDescriptor = CameraService::CameraClientManager::makeClientDescriptor(client, desc);
1042 String8(client->getPackageName()));
1055 // And register a death notification for the client callback. Do
1057 // transaction might be pre-empted to service the client death
1058 // notification if the client process dies before linkToDeath is
1060 sp<IBinder> remoteCallback = client->getRemote();
1069 sp<BasicClient>* client,
1077 // If we are using API1, any existing client for this camera ID with the same remote
1085 ALOGW("CameraService connect called from same client, but with a different"
1086 " API level, evicting prior client...");
1089 " app binder, returning the same client)", clientPid);
1090 *client = clientSp;
1097 // Get current active client PIDs
1127 // Make descriptor for incoming client
1136 // If the incoming client was 'evicted,' higher priority clients have the camera in the
1139 ALOGE("CameraService::connect X (PID %d) rejected (existing client(s) with higher"
1147 String8 msg = String8::format("%s : DENIED connect device %s client for package %s "
1153 msg.appendFormat("\n - Blocked by existing device %s client for package %s"
1157 ALOGE(" Conflicts with: Device %s, client package %s (PID %"
1163 // Log the client's attempt
1173 ALOGE("%s: Invalid state: Null client in active client list.", __FUNCTION__);
1176 LOG_ALWAYS_FATAL("%s: Invalid state for CameraService, null client in active list",
1182 ALOGE("CameraService::connect evicting conflicting client for camera ID %s",
1187 logEvent(String8::format("EVICT device %s client held by package %s (PID"
1188 " %" PRId32 ", priority %" PRId32 ")\n - Evicted by device %s client for"
1195 // Notify the client of disconnection
1205 // Clear caller identity temporarily so client disconnect PID checks work correctly
1211 i->getValue()->disconnect(); // Clients will remove themselves from the active client list
1217 ALOGV("%s: Waiting for disconnect to complete for client for device %s (PID %" PRId32 ")",
1221 ALOGE("%s: Timed out waiting for client for device %s to disconnect, "
1227 ALOGE("%s: Received error waiting for client for device %s to disconnect: %s (%d), "
1260 sp<Client> client = nullptr;
1264 /*out*/client);
1272 *device = client;
1291 * a camera client selected by the latest device version, or
1305 sp<Client> client = nullptr;
1309 /*out*/client);
1317 *device = client;
1332 sp<CameraDeviceClient> client = nullptr;
1337 /*out*/client);
1345 *device = client;
1354 ALOGE("%s: torch client binder is NULL", __FUNCTION__);
1356 "Torch client Binder is null");
1446 // update the link to client's death
1643 void CameraService::removeByClient(const BasicClient* client) {
1647 if (clientSp.get() == client) {
1667 ALOGE("%s: Dead client still in mActiveClientManager.", __FUNCTION__);
1676 // Notify the client of disconnection
1687 // Do not clear caller identity, remote caller should be client proccess
1796 ALOGW("%s: Could not evict client, no client for camera ID %s", __FUNCTION__,
1835 ALOGE("%s: Dead client still in mActiveClientManager.", __FUNCTION__);
1850 ALOGE("Evicting conflicting client for camera ID %s due to user change",
1854 logEvent(String8::format("EVICT device %s client held by package %s (PID %"
1865 // Clear caller identity temporarily so client disconnect PID checks work correctly
1887 logEvent(String8::format("DISCONNECT device %s client for package %s (PID %d)", cameraId,
1894 logEvent(String8::format("CONNECT device %s client for package %s (PID %d)", cameraId,
1900 // Log the client rejected
1901 logEvent(String8::format("REJECT device %s client for package %s (PID %d), reason: (%s)",
1926 logEvent(String8::format("DIED client(s) with PID %d, reason: (%s)", clientPid, reason));
2039 // tear down the client
2121 ALOGI("%s: Disconnected client for camera %d for PID %d", __FUNCTION__, mCameraId, mClientPid);
2123 // client shouldn't be able to call into us anymore
2163 ALOGV("%s: Start camera ops, package name = %s, client UID = %d",
2255 // Reset the client PID to allow server-initiated disconnect,
2256 // and to prevent further calls by client.
2266 // Provide client strong pointer for callbacks.
2298 CameraService::Client::OpsCallback::OpsCallback(wp<BasicClient> client):
2299 mClient(client) {
2304 sp<BasicClient> client = mClient.promote();
2305 if (client != NULL) {
2306 client->opChanged(op, packageName);
2576 result = String8::format(" Device %s is closed, no client instance\n",
2587 auto client = clientDescriptor->getValue();
2589 String8(client->getPackageName()).string());
2592 client->dumpClient(fd, args);
2641 String8 result = String8("\nPrior client events (most recent at top):\n");
2662 // turn off the torch mode that was turned on by dead client
2666 ALOGE("%s: torch client died but couldn't turn off torch: "
2685 // check torch client
2688 // check camera device client
2690 ALOGV("%s: Java client's binder death already cleaned up (normal case)", __FUNCTION__);
2694 ALOGE("%s: Java client's binder died, removing it from the list of active clients",