Lines Matching defs:pClient

54     VBOXHOSTCHCLIENT *pClient; /* The client which uses the channel. */
74 VBOXHOSTCHCLIENT *pClient; /* The client which uses the channel, NULL when the client does not exist. */
184 static int vhcHandleCreate(VBOXHOSTCHCLIENT *pClient, uint32_t *pu32Handle)
190 uint32_t u32Handle = ASMAtomicIncU32(&pClient->u32HandleSrc);
205 RTListForEach(&pClient->listChannels, pIter, VBOXHOSTCHINSTANCE, nodeClient)
252 static int vhcInstanceCreate(VBOXHOSTCHCLIENT *pClient, VBOXHOSTCHINSTANCE **ppInstance)
264 rc = vhcHandleCreate(pClient, &pInstance->u32Handle);
270 /* Add to the list of created channel instances. It is inactive while pClient is 0. */
271 RTListAppend(&pClient->listChannels, &pInstance->nodeClient);
294 static VBOXHOSTCHINSTANCE *vhcInstanceFind(VBOXHOSTCHCLIENT *pClient, uint32_t u32Handle)
303 RTListForEach(&pClient->listChannels, pIter, VBOXHOSTCHINSTANCE, nodeClient)
305 if ( pIter->pClient
322 static VBOXHOSTCHINSTANCE *vhcInstanceFindByChannelPtr(VBOXHOSTCHCLIENT *pClient, void *pvChannel)
336 RTListForEach(&pClient->listChannels, pIter, VBOXHOSTCHINSTANCE, nodeClient)
338 if ( pIter->pClient
383 static int vhcCallbackCtxCreate(VBOXHOSTCHCLIENT *pClient, VBOXHOSTCHCALLBACKCTX **ppCallbackCtx)
395 RTListAppend(&pClient->listContexts, &pCallbackCtx->nodeClient);
396 pCallbackCtx->pClient = pClient;
423 VBOXHOSTCHCLIENT *pClient = pCallbackCtx->pClient;
425 if (pClient != NULL)
433 RTListForEach(&pClient->listContexts, pIter, VBOXHOSTCHCALLBACKCTX, nodeClient)
502 int vboxHostChannelClientConnect(VBOXHOSTCHCLIENT *pClient)
506 * pClient is already zeroed.
508 pClient->pCtx = &g_ctx;
510 RTListInit(&pClient->listChannels);
511 RTListInit(&pClient->listEvents);
512 RTListInit(&pClient->listContexts);
517 void vboxHostChannelClientDisconnect(VBOXHOSTCHCLIENT *pClient)
525 RTListForEachSafe(&pClient->listContexts, pIter, pNext, VBOXHOSTCHCALLBACKCTX, nodeClient)
527 pIter->pClient = NULL;
537 RTListForEachSafe(&pClient->listChannels, pIter, pIterNext, VBOXHOSTCHINSTANCE, nodeClient)
543 int vboxHostChannelAttach(VBOXHOSTCHCLIENT *pClient,
550 HOSTCHLOG(("HostChannel: Attach: (%d) [%s] 0x%08X\n", pClient->u32ClientID, pszName, u32Flags));
553 VBOXHOSTCHPROVIDER *pProvider = vhcProviderFind(pClient->pCtx, pszName);
559 rc = vhcInstanceCreate(pClient, &pInstance);
564 rc = vhcCallbackCtxCreate(pClient, &pCallbackCtx);
579 pInstance->pClient = pClient;
589 HOSTCHLOG(("HostChannel: Attach: (%d) handle %d\n", pClient->u32ClientID, pInstance->u32Handle));
616 int vboxHostChannelDetach(VBOXHOSTCHCLIENT *pClient,
619 HOSTCHLOG(("HostChannel: Detach: (%d) handle %d\n", pClient->u32ClientID, u32Handle));
623 VBOXHOSTCHINSTANCE *pInstance = vhcInstanceFind(pClient, u32Handle);
639 int vboxHostChannelSend(VBOXHOSTCHCLIENT *pClient,
644 HOSTCHLOG(("HostChannel: Send: (%d) handle %d, %d bytes\n", pClient->u32ClientID, u32Handle, cbData));
648 VBOXHOSTCHINSTANCE *pInstance = vhcInstanceFind(pClient, u32Handle);
667 int vboxHostChannelRecv(VBOXHOSTCHCLIENT *pClient,
674 HOSTCHLOG(("HostChannel: Recv: (%d) handle %d, cbData %d\n", pClient->u32ClientID, u32Handle, cbData));
678 VBOXHOSTCHINSTANCE *pInstance = vhcInstanceFind(pClient, u32Handle);
688 pClient->u32ClientID, u32Handle, rc, cbData, *pu32SizeReceived, *pu32SizeRemaining));
701 int vboxHostChannelControl(VBOXHOSTCHCLIENT *pClient,
710 HOSTCHLOG(("HostChannel: Control: (%d) handle %d, cbData %d\n", pClient->u32ClientID, u32Handle, cbData));
714 VBOXHOSTCHINSTANCE *pInstance = vhcInstanceFind(pClient, u32Handle);
746 int vboxHostChannelEventWait(VBOXHOSTCHCLIENT *pClient,
757 if (pClient->fAsync)
760 vboxHostChannelReportAsync(pClient, 0, VBOX_HOST_CHANNEL_EVENT_CANCELLED, NULL, 0);
761 pClient->fAsync = false;
765 VBOXHOSTCHANNELEVENT *pEvent = RTListGetFirst(&pClient->listEvents, VBOXHOSTCHANNELEVENT, NodeEvent);
767 HOSTCHLOG(("HostChannel: QueryEvent: (%d), event %p\n", pClient->u32ClientID, pEvent));
775 pClient->u32ClientID, pEvent->cbEvent));
787 pClient->fAsync = true;
788 pClient->async.callHandle = callHandle;
789 pClient->async.paParms = paParms;
799 int vboxHostChannelEventCancel(VBOXHOSTCHCLIENT *pClient)
805 if (pClient->fAsync)
808 vboxHostChannelReportAsync(pClient, 0, VBOX_HOST_CHANNEL_EVENT_CANCELLED, NULL, 0);
810 pClient->fAsync = false;
834 VBOXHOSTCHCLIENT *pClient = pCallbackCtx->pClient;
836 if (pClient == NULL)
849 RTListForEach(&pClient->listContexts, pIter, VBOXHOSTCHCALLBACKCTX, nodeClient)
870 VBOXHOSTCHINSTANCE *pInstance = vhcInstanceFindByChannelPtr(pClient, pvChannel);
873 pCallbackCtx, pClient->u32ClientID, pInstance));
886 pClient->u32ClientID, u32ChannelHandle, pClient->fAsync, cbEvent));
889 if (pClient->fAsync)
892 vboxHostChannelReportAsync(pClient, u32ChannelHandle, u32Id, pvEvent, cbEvent);
894 pClient->fAsync = false;
918 RTListAppend(&pClient->listEvents, &pEvent->NodeEvent);
933 int vboxHostChannelQuery(VBOXHOSTCHCLIENT *pClient,
942 HOSTCHLOG(("HostChannel: Query: (%d) name [%s], cbData %d\n", pClient->u32ClientID, pszName, cbData));
947 VBOXHOSTCHPROVIDER *pProvider = vhcProviderFind(pClient->pCtx, pszName);