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,
938 "forward camera access to camera %s for client %s (PID %d, UID %d)",
951 "forward camera access to camera %s for client %s (PID %d, UID %d)",
965 // Only use passed in clientPid to check permission. Use calling PID as the client PID that's
1035 void CameraService::finishConnectLocked(const sp<BasicClient>& client,
1038 // Make a descriptor for the incoming client
1039 auto clientDescriptor = CameraService::CameraClientManager::makeClientDescriptor(client, desc);
1043 String8(client->getPackageName()));
1056 // And register a death notification for the client callback. Do
1058 // transaction might be pre-empted to service the client death
1059 // notification if the client process dies before linkToDeath is
1061 sp<IBinder> remoteCallback = client->getRemote();
1070 sp<BasicClient>* client,
1078 // If we are using API1, any existing client for this camera ID with the same remote
1086 ALOGW("CameraService connect called from same client, but with a different"
1087 " API level, evicting prior client...");
1090 " app binder, returning the same client)", clientPid);
1091 *client = clientSp;
1098 // Get current active client PIDs
1128 // Make descriptor for incoming client
1137 // If the incoming client was 'evicted,' higher priority clients have the camera in the
1140 ALOGE("CameraService::connect X (PID %d) rejected (existing client(s) with higher"
1148 String8 msg = String8::format("%s : DENIED connect device %s client for package %s "
1154 msg.appendFormat("\n - Blocked by existing device %s client for package %s"
1158 ALOGE(" Conflicts with: Device %s, client package %s (PID %"
1164 // Log the client's attempt
1174 ALOGE("%s: Invalid state: Null client in active client list.", __FUNCTION__);
1177 LOG_ALWAYS_FATAL("%s: Invalid state for CameraService, null client in active list",
1183 ALOGE("CameraService::connect evicting conflicting client for camera ID %s",
1188 logEvent(String8::format("EVICT device %s client held by package %s (PID"
1189 " %" PRId32 ", priority %" PRId32 ")\n - Evicted by device %s client for"
1196 // Notify the client of disconnection
1206 // Clear caller identity temporarily so client disconnect PID checks work correctly
1212 i->getValue()->disconnect(); // Clients will remove themselves from the active client list
1218 ALOGV("%s: Waiting for disconnect to complete for client for device %s (PID %" PRId32 ")",
1222 ALOGE("%s: Timed out waiting for client for device %s to disconnect, "
1228 ALOGE("%s: Received error waiting for client for device %s to disconnect: %s (%d), "
1261 sp<Client> client = nullptr;
1265 /*out*/client);
1273 *device = client;
1292 * a camera client selected by the latest device version, or
1306 sp<Client> client = nullptr;
1310 /*out*/client);
1318 *device = client;
1333 sp<CameraDeviceClient> client = nullptr;
1338 /*out*/client);
1346 *device = client;
1355 ALOGE("%s: torch client binder is NULL", __FUNCTION__);
1357 "Torch client Binder is null");
1447 // update the link to client's death
1644 void CameraService::removeByClient(const BasicClient* client) {
1648 if (clientSp.get() == client) {
1668 ALOGE("%s: Dead client still in mActiveClientManager.", __FUNCTION__);
1677 // Notify the client of disconnection
1688 // Do not clear caller identity, remote caller should be client proccess
1797 ALOGW("%s: Could not evict client, no client for camera ID %s", __FUNCTION__,
1836 ALOGE("%s: Dead client still in mActiveClientManager.", __FUNCTION__);
1851 ALOGE("Evicting conflicting client for camera ID %s due to user change",
1855 logEvent(String8::format("EVICT device %s client held by package %s (PID %"
1866 // Clear caller identity temporarily so client disconnect PID checks work correctly
1888 logEvent(String8::format("DISCONNECT device %s client for package %s (PID %d)", cameraId,
1895 logEvent(String8::format("CONNECT device %s client for package %s (PID %d)", cameraId,
1901 // Log the client rejected
1902 logEvent(String8::format("REJECT device %s client for package %s (PID %d), reason: (%s)",
1927 logEvent(String8::format("DIED client(s) with PID %d, reason: (%s)", clientPid, reason));
2040 // tear down the client
2124 ALOGI("%s: Disconnected client for camera %d for PID %d", __FUNCTION__, mCameraId, mClientPid);
2126 // client shouldn't be able to call into us anymore
2166 ALOGV("%s: Start camera ops, package name = %s, client UID = %d",
2254 // Reset the client PID to allow server-initiated disconnect,
2255 // and to prevent further calls by client.
2265 // Provide client strong pointer for callbacks.
2297 CameraService::Client::OpsCallback::OpsCallback(wp<BasicClient> client):
2298 mClient(client) {
2303 sp<BasicClient> client = mClient.promote();
2304 if (client != NULL) {
2305 client->opChanged(op, packageName);
2575 result = String8::format(" Device %s is closed, no client instance\n",
2586 auto client = clientDescriptor->getValue();
2588 String8(client->getPackageName()).string());
2591 client->dumpClient(fd, args);
2640 String8 result = String8("\nPrior client events (most recent at top):\n");
2661 // turn off the torch mode that was turned on by dead client
2665 ALOGE("%s: torch client died but couldn't turn off torch: "
2684 // check torch client
2687 // check camera device client
2689 ALOGV("%s: Java client's binder death already cleaned up (normal case)", __FUNCTION__);
2693 ALOGE("%s: Java client's binder died, removing it from the list of active clients",