fix missed nullptr checks for if networking is disabled;

pull/51/head
Bryan Biedenkapp 2 years ago
parent 7cc2b99000
commit 424c7fa35a

@ -221,7 +221,8 @@ bool ControlSignaling::process(uint8_t* data, uint32_t len)
if (m_slot->m_authoritative) {
writeRF_CSBK_Grant(srcId, dstId, isp->getServiceOptions(), false);
} else {
m_slot->m_network->writeGrantReq(modem::DVM_STATE::STATE_DMR, srcId, dstId, m_slot->m_slotNo, true);
if (m_slot->m_network != nullptr)
m_slot->m_network->writeGrantReq(modem::DVM_STATE::STATE_DMR, srcId, dstId, m_slot->m_slotNo, true);
}
break;
case SVC_KIND_GRP_VOICE_CALL:
@ -239,7 +240,8 @@ bool ControlSignaling::process(uint8_t* data, uint32_t len)
if (m_slot->m_authoritative) {
writeRF_CSBK_Grant(srcId, dstId, isp->getServiceOptions(), true);
} else {
m_slot->m_network->writeGrantReq(modem::DVM_STATE::STATE_DMR, srcId, dstId, m_slot->m_slotNo, false);
if (m_slot->m_network != nullptr)
m_slot->m_network->writeGrantReq(modem::DVM_STATE::STATE_DMR, srcId, dstId, m_slot->m_slotNo, false);
}
break;
case SVC_KIND_IND_DATA_CALL:
@ -1355,7 +1357,8 @@ void ControlSignaling::writeRF_CSBK_U_Reg_Rsp(uint32_t srcId, uint8_t serviceOpt
// remove dynamic unit registration table entry
m_slot->m_affiliations->unitDereg(srcId);
m_slot->m_network->announceUnitDeregistration(srcId);
if (m_slot->m_network != nullptr)
m_slot->m_network->announceUnitDeregistration(srcId);
csbk->setReason(TS_ACK_RSN_REG);
}
@ -1382,7 +1385,8 @@ void ControlSignaling::writeRF_CSBK_U_Reg_Rsp(uint32_t srcId, uint8_t serviceOpt
m_slot->m_affiliations->unitReg(srcId);
}
m_slot->m_network->announceUnitRegistration(srcId);
if (m_slot->m_network != nullptr)
m_slot->m_network->announceUnitRegistration(srcId);
}
}

@ -187,7 +187,8 @@ bool ControlSignaling::process(uint8_t fct, uint8_t option, uint8_t* data, uint3
if (m_nxdn->m_authoritative) {
writeRF_Message_Grant(srcId, dstId, serviceOptions, true);
} else {
m_nxdn->m_network->writeGrantReq(modem::DVM_STATE::STATE_NXDN, srcId, dstId, 0U, false);
if (m_nxdn->m_network != nullptr)
m_nxdn->m_network->writeGrantReq(modem::DVM_STATE::STATE_NXDN, srcId, dstId, 0U, false);
}
}
break;
@ -724,7 +725,8 @@ bool ControlSignaling::writeRF_Message_Grp_Reg_Rsp(uint32_t srcId, uint32_t dstI
// update dynamic affiliation table
m_nxdn->m_affiliations.groupAff(srcId, dstId);
m_nxdn->m_network->announceGroupAffiliation(srcId, dstId);
if (m_nxdn->m_network != nullptr)
m_nxdn->m_network->announceGroupAffiliation(srcId, dstId);
}
writeRF_Message_Imm(rcch.get(), false);
@ -767,7 +769,8 @@ void ControlSignaling::writeRF_Message_U_Reg_Rsp(uint32_t srcId, uint32_t locId)
m_nxdn->m_affiliations.unitReg(srcId);
}
m_nxdn->m_network->announceUnitRegistration(srcId);
if (m_nxdn->m_network != nullptr)
m_nxdn->m_network->announceUnitRegistration(srcId);
}
rcch->setSrcId(srcId);

@ -242,7 +242,8 @@ bool ControlSignaling::process(uint8_t* data, uint32_t len, std::unique_ptr<lc::
writeRF_TSDU_Grant(srcId, dstId, serviceOptions, true);
} else {
m_p25->m_network->writeGrantReq(modem::DVM_STATE::STATE_P25, srcId, dstId, 0U, false);
if (m_p25->m_network != nullptr)
m_p25->m_network->writeGrantReq(modem::DVM_STATE::STATE_P25, srcId, dstId, 0U, false);
}
}
break;
@ -272,7 +273,8 @@ bool ControlSignaling::process(uint8_t* data, uint32_t len, std::unique_ptr<lc::
writeRF_TSDU_Grant(srcId, dstId, serviceOptions, false);
} else {
m_p25->m_network->writeGrantReq(modem::DVM_STATE::STATE_P25, srcId, dstId, 0U, true);
if (m_p25->m_network != nullptr)
m_p25->m_network->writeGrantReq(modem::DVM_STATE::STATE_P25, srcId, dstId, 0U, true);
}
}
}
@ -302,7 +304,8 @@ bool ControlSignaling::process(uint8_t* data, uint32_t len, std::unique_ptr<lc::
writeRF_TSDU_Grant(srcId, dstId, serviceOptions, false);
} else {
m_p25->m_network->writeGrantReq(modem::DVM_STATE::STATE_P25, srcId, dstId, 0U, true);
if (m_p25->m_network != nullptr)
m_p25->m_network->writeGrantReq(modem::DVM_STATE::STATE_P25, srcId, dstId, 0U, true);
}
}
else if (iosp->getResponse() == P25_ANS_RSP_DENY) {
@ -2685,7 +2688,8 @@ bool ControlSignaling::writeRF_TSDU_Grp_Aff_Rsp(uint32_t srcId, uint32_t dstId)
// update dynamic affiliation table
m_p25->m_affiliations.groupAff(srcId, dstId);
m_p25->m_network->announceGroupAffiliation(srcId, dstId);
if (m_p25->m_network != nullptr)
m_p25->m_network->announceGroupAffiliation(srcId, dstId);
}
writeRF_TSDU_SBF_Imm(iosp.get(), noNet);
@ -2731,7 +2735,8 @@ void ControlSignaling::writeRF_TSDU_U_Reg_Rsp(uint32_t srcId, uint32_t sysId)
m_p25->m_affiliations.unitReg(srcId);
}
m_p25->m_network->announceUnitRegistration(srcId);
if (m_p25->m_network != nullptr)
m_p25->m_network->announceUnitRegistration(srcId);
}
writeRF_TSDU_SBF_Imm(iosp.get(), true);
@ -2767,7 +2772,8 @@ void ControlSignaling::writeRF_TSDU_U_Dereg_Ack(uint32_t srcId)
writeRF_TSDU_SBF_Imm(osp.get(), false);
m_p25->m_network->announceUnitDeregistration(srcId);
if (m_p25->m_network != nullptr)
m_p25->m_network->announceUnitDeregistration(srcId);
}
}

@ -365,10 +365,12 @@ bool Voice::process(uint8_t* data, uint32_t len)
}
// send network grant demand TDU
if (!m_p25->m_enableControl && m_p25->m_convNetGrantDemand) {
uint8_t controlByte = 0x80U + ((group) ? 0x00U : 0x01U);
LogMessage(LOG_RF, P25_HDU_STR " remote grant demand, srcId = %u, dstId = %u", srcId, dstId);
m_p25->m_network->writeP25TDU(lc, m_rfLSD, controlByte);
if (m_p25->m_network != nullptr) {
if (!m_p25->m_enableControl && m_p25->m_convNetGrantDemand) {
uint8_t controlByte = 0x80U + ((group) ? 0x00U : 0x01U);
LogMessage(LOG_RF, P25_HDU_STR " remote grant demand, srcId = %u, dstId = %u", srcId, dstId);
m_p25->m_network->writeP25TDU(lc, m_rfLSD, controlByte);
}
}
m_rfLC = lc;

Loading…
Cancel
Save

Powered by TurnKey Linux.