Example #1
0
Boolean Capi2CopyPayload( MsgType_t msgType, 
						 void* srcDataBuf, 
						 UInt32 destBufSize,
						 void* destDataBuf, 
						 UInt32* outDestDataSize, 
						 Result_t *outResult)
{
	UInt32 len;
	CAPI2_ReqRep_t *req;
	void* dataBuf;
	CAPI2_ReqRep_t* reqRep =  (CAPI2_ReqRep_t*)srcDataBuf;
	
	xassert(srcDataBuf != NULL, 0);
	CAPI2_GetPayloadInfo(reqRep, msgType, &dataBuf, &len);
	
	req = (CAPI2_ReqRep_t*)srcDataBuf;
	*outResult = req->result;
	*outDestDataSize = len;


	if(destDataBuf && dataBuf && len <= destBufSize)
	{
		memcpy(destDataBuf, dataBuf, len);
		return TRUE;
	}
	return FALSE;
}
Example #2
0
static void KPDP_RPC_RespCbk(RPC_Msg_t* pMsg, ResultDataBufHandle_t dataBufHandle, UInt32 userContextData)
{
    UInt32 len;
    void* dataBuf;
    CAPI2_ReqRep_t* reqRep =  (CAPI2_ReqRep_t*)pMsg->dataBuf;
    CAPI2_GetPayloadInfo(reqRep, pMsg->msgId, &dataBuf, &len);

    //KPDP_DEBUG(DBG_INFO, "KPDP_RPC_RespCbk\n");
    KPDP_Capi2HandleRespCbk(pMsg->tid, pMsg->clientID, pMsg->msgId, reqRep->result, dataBuf, len, dataBufHandle);
}
Example #3
0
void G_RPC_RespCbk(RPC_Msg_t* pMsg, ResultDataBufHandle_t dataBufHandle, UInt32 userContextData)
{
    UInt32 len;
    void* dataBuf;
    CAPI2_ReqRep_t* reqRep =  (CAPI2_ReqRep_t*)pMsg->dataBuf;
    CAPI2_GetPayloadInfo(reqRep, pMsg->msgId, &dataBuf, &len);

    // Save the dialogID for MT USSD (the dialogID is allocated in CP side and binded with the MNSS context)
    if (pMsg->msgId == MSG_MNSS_CLIENT_SS_SRV_IND)
    {
        gDialogID = reqRep->clientInfo.dialogId;
        KRIL_DEBUG(DBG_INFO, "G_RPC_RespCbk:: Set gDialogID = %x\n", gDialogID);
    }

    KRIL_Capi2HandleRespCbk(pMsg->tid, pMsg->clientID, pMsg->msgId, reqRep->clientInfo.simId, reqRep->clientInfo.dialogId, reqRep->result, dataBuf, len, dataBufHandle);
}
void HandleAudioEventrespCb(RPC_Msg_t* pMsg,
                            ResultDataBufHandle_t dataBufHandle,
                            UInt32 userContextData)
{
    if ( pMsg->tid == 0 )
    {
        if (MSG_CALL_STATUS_IND == pMsg->msgId )
        {
            UInt32 len;
            void* dataBuf;
            CallStatusMsg_t* p = NULL;
            CAPI2_ReqRep_t * const reqRep = (CAPI2_ReqRep_t*)pMsg->dataBuf;

            Log_DebugPrintf(LOGID_MISC, "HandleAudioEventrespCb : ===pMsg->tid=0x%x, pMsg->clientID=0x%x, pMsg->msgId=0x%x \r\n",(unsigned int)pMsg->tid, pMsg->clientID, pMsg->msgId);

            CAPI2_GetPayloadInfo(reqRep, pMsg->msgId, &dataBuf, &len);

            p = (CallStatusMsg_t*)dataBuf;

            Log_DebugPrintf(LOGID_MISC, "HandleAudioEventrespCb : codecid=0x%x, callstatus=0x%x \r\n",p->codecId, p->callstatus);

            if ( client_call_codecId_handler && p->codecId != 0 && p->callstatus == CC_CALL_SYNC_IND)
            {
                Log_DebugPrintf(LOGID_MISC, "HandleAudioEventrespCb : calling client_call_codecId_handler\r\n");
                client_call_codecId_handler(p->codecId);
            }
        }
    }

    if ( dataBufHandle )
    {
        RPC_SYSFreeResultDataBuffer(dataBufHandle);
    }
    else
        Log_DebugPrintf(LOGID_MISC, "HandleAudioEventrespCb : dataBufHandle is NULL \r\n");
}