void triggerQueryDefaultPDNContextParams(void* param) { REQUEST_DATA rReqData; memset(&rReqData, 0, sizeof(REQUEST_DATA)); CChannel_Data* pChannelData = NULL; UINT32 uiCID = 0; if (param == NULL) return; pChannelData = (CChannel_Data*)param; uiCID = pChannelData->GetContextID(); RIL_LOG_VERBOSE("triggerQueryDefaultPDNContextParams - uiCID: %u\r\n", uiCID); if (PrintStringNullTerminate(rReqData.szCmd1, sizeof(rReqData.szCmd1), "AT+CGCONTRDP=%u\r", uiCID)) { CCommand* pCmd = new CCommand(pChannelData->GetRilChannel(), NULL, REQ_ID_NONE, rReqData, &CTE::ParseReadContextParams, &CTE::PostReadDefaultPDNContextParams); if (pCmd) { if (!CCommand::AddCmdToQueue(pCmd)) { RIL_LOG_CRITICAL("triggerQueryDefaultPDNContextParams - " "Unable to queue AT+CGCONTRDP command!\r\n"); delete pCmd; } } } }
void triggerQueryBearerParams(void* param) { REQUEST_DATA rReqDataTFT; REQUEST_DATA rReqDataQOS; memset(&rReqDataTFT, 0, sizeof(REQUEST_DATA)); memset(&rReqDataQOS, 0, sizeof(REQUEST_DATA)); CChannel_Data* pChannelData = NULL; UINT32 uiPCID = 0; UINT32 uiCID = 0; void** callbackParams = NULL; if (param == NULL) return; callbackParams = (void**)param; uiPCID = (UINT32)callbackParams[0]; uiCID = (UINT32)callbackParams[1]; pChannelData = (CChannel_Data*)callbackParams[2]; delete callbackParams; RIL_LOG_VERBOSE("triggerQueryBearerParams - uiPCID: %u, uiCID: %u\r\n", uiPCID, uiCID); if (PrintStringNullTerminate(rReqDataTFT.szCmd1, sizeof(rReqDataTFT.szCmd1), "AT+CGTFTRDP=%u\r", uiCID)) { CCommand* pCmdTFT = new CCommand(pChannelData->GetRilChannel(), NULL, REQ_ID_NONE, rReqDataTFT, &CTE::ParseReadBearerTFTParams); if (pCmdTFT) { if (!CCommand::AddCmdToQueue(pCmdTFT)) { RIL_LOG_CRITICAL("triggerQueryBearerParams - " "Unable to queue AT+CGTFTRDP command!\r\n"); delete pCmdTFT; } } } if (PrintStringNullTerminate(rReqDataQOS.szCmd1, sizeof(rReqDataQOS.szCmd1), "AT+CGEQOS=%u\r", uiCID)) { CCommand* pCmdQOS = new CCommand(pChannelData->GetRilChannel(), NULL, REQ_ID_NONE, rReqDataQOS, &CTE::ParseReadBearerQOSParams); if (pCmdQOS) { if (!CCommand::AddCmdToQueue(pCmdQOS)) { RIL_LOG_CRITICAL("triggerQueryBearerParams - " "Unable to queue AT+CGEQOS command!\r\n"); delete pCmdQOS; } } } }
BOOL CSilo_Data::ParseNoCarrier(CResponse* const pResponse, const char*& /*rszPointer*/) { RIL_LOG_INFO("CSilo_Data::ParseNoCarrier() - Enter\r\n"); BOOL fRet = FALSE; CChannel_Data* pChannelData = NULL; if (pResponse == NULL) { RIL_LOG_CRITICAL("CSilo_Data::ParseNoCarrier() : pResponse was NULL\r\n"); goto Error; } pResponse->SetUnsolicitedFlag(TRUE); // Free this channel's context ID. pChannelData = CChannel_Data::GetChnlFromRilChannelNumber(m_pChannel->GetRilChannel()); if (NULL != pChannelData) { RIL_LOG_INFO("CSilo_Data::ParseNoCarrier() : Calling DataConfigDown chnl=[%u]," " cid=[%u]\r\n", m_pChannel->GetRilChannel(), pChannelData->GetContextID()); // Release network interface if (!CTE::GetTE().DataConfigDown(pChannelData->GetContextID(), TRUE)) { RIL_LOG_CRITICAL("CSilo_Data::ParseNoCarrier() - DataConfigDown FAILED chnl=[%u]," " cid=[%u]\r\n", m_pChannel->GetRilChannel(), pChannelData->GetContextID()); } } fRet = TRUE; Error: RIL_LOG_INFO("CSilo_Data::ParseNoCarrier() - Exit\r\n"); return fRet; }