add some verbose debug trace for checkNetTrafficCollision();

r05a04_dev
Bryan Biedenkapp 3 weeks ago
parent 6b70ffe435
commit f4ea79b614

@ -1227,6 +1227,10 @@ bool Voice::checkNetTrafficCollision(uint32_t dstId)
// don't process network frames if the destination ID's don't match and the RF TG hang timer is running
if (m_slot->m_rfLastDstId != 0U) {
if (m_slot->m_rfLastDstId != dstId && (m_slot->m_rfTGHang.isRunning() && !m_slot->m_rfTGHang.hasExpired())) {
if (m_debug) {
LogDebugEx(LOG_NET, "Voice::checkNetTrafficCollision()", "DMR Slot %u, dropping frames, because dstId does not match and RF TG hang timer is running, rfLastDstId = %u, dstId = %u",
m_slot->m_slotNo, m_slot->m_rfLastDstId, dstId);
}
return true;
}
}
@ -1241,12 +1245,20 @@ bool Voice::checkNetTrafficCollision(uint32_t dstId)
// the destination ID doesn't match the default net idle talkgroup
if (m_slot->m_defaultNetIdleTalkgroup != 0U && dstId != 0U && !m_slot->m_rfTGHang.isRunning()) {
if (m_slot->m_defaultNetIdleTalkgroup != dstId) {
if (m_debug) {
LogDebugEx(LOG_NET, "Voice::checkNetTrafficCollision()", "DMR Slot %u, dropping frames, because dstId does not match default net idle talkgroup, defaultNetIdleTalkgroup = %u, dstId = %u",
m_slot->m_slotNo, m_slot->m_defaultNetIdleTalkgroup, dstId);
}
return true;
}
}
if (m_slot->m_netLastDstId != 0U) {
if (m_slot->m_netLastDstId != dstId && (m_slot->m_netTGHang.isRunning() && !m_slot->m_netTGHang.hasExpired())) {
if (m_debug) {
LogDebugEx(LOG_NET, "Voice::checkNetTrafficCollision()", "DMR Slot %u, dropping frames, because dstId does not match and network TG hang timer is running, netLastDstId = %u, dstId = %u",
m_slot->m_slotNo, m_slot->m_netLastDstId, dstId);
}
return true;
}
}

@ -1137,6 +1137,10 @@ bool Voice::checkNetTrafficCollision(lc::RTCH lc, uint32_t srcId, uint32_t dstId
if (m_nxdn->m_rfLastDstId != 0U) {
if (m_nxdn->m_rfLastDstId != dstId && (m_nxdn->m_rfTGHang.isRunning() && !m_nxdn->m_rfTGHang.hasExpired())) {
resetNet();
if (m_debug) {
LogDebugEx(LOG_NET, "Voice::checkNetTrafficCollision()", "dropping frames, because dstId does not match and RF TG hang timer is running, rfLastDstId = %u, dstId = %u",
m_nxdn->m_rfLastDstId, dstId);
}
return true;
}
@ -1155,6 +1159,10 @@ bool Voice::checkNetTrafficCollision(lc::RTCH lc, uint32_t srcId, uint32_t dstId
// the destination ID doesn't match the default net idle talkgroup
if (m_nxdn->m_defaultNetIdleTalkgroup != 0U && dstId != 0U && !m_nxdn->m_rfTGHang.isRunning()) {
if (m_nxdn->m_defaultNetIdleTalkgroup != dstId) {
if (m_debug) {
LogDebugEx(LOG_NET, "Voice::checkNetTrafficCollision()", "dropping frames, because dstId does not match default net idle talkgroup, defaultNetIdleTalkgroup = %u, dstId = %u",
m_nxdn->m_defaultNetIdleTalkgroup, dstId);
}
return true;
}
}
@ -1163,6 +1171,10 @@ bool Voice::checkNetTrafficCollision(lc::RTCH lc, uint32_t srcId, uint32_t dstId
if (m_nxdn->m_authoritative) {
if (m_nxdn->m_netLastDstId != 0U) {
if (m_nxdn->m_netLastDstId != dstId && (m_nxdn->m_netTGHang.isRunning() && !m_nxdn->m_netTGHang.hasExpired())) {
if (m_debug) {
LogDebugEx(LOG_NET, "Voice::checkNetTrafficCollision()", "dropping frames, because dstId does not match and network TG hang timer is running, netLastDstId = %u, dstId = %u",
m_nxdn->m_netLastDstId, dstId);
}
return true;
}

@ -1574,6 +1574,10 @@ bool Voice::checkNetTrafficCollision(uint32_t srcId, uint32_t dstId, defines::DU
resetNet();
if (m_p25->m_network != nullptr)
m_p25->m_network->resetP25();
if (m_debug) {
LogDebugEx(LOG_NET, "Voice::checkNetTrafficCollision()", "dropping frames, because dstId does not match and RF TG hang timer is running, rfLastDstId = %u, dstId = %u",
m_p25->m_rfLastDstId, dstId);
}
return true;
}
@ -1598,6 +1602,10 @@ bool Voice::checkNetTrafficCollision(uint32_t srcId, uint32_t dstId, defines::DU
resetNet();
if (m_p25->m_network != nullptr)
m_p25->m_network->resetP25();
if (m_debug) {
LogDebugEx(LOG_NET, "Voice::checkNetTrafficCollision()", "dropping frames, because dstId does not match default net idle talkgroup, defaultNetIdleTalkgroup = %u, dstId = %u",
m_p25->m_defaultNetIdleTalkgroup, dstId);
}
return true;
}
}
@ -1616,6 +1624,10 @@ bool Voice::checkNetTrafficCollision(uint32_t srcId, uint32_t dstId, defines::DU
// don't process network frames if the destination ID's don't match and the network TG hang timer is running
if (m_p25->m_netLastDstId != 0U && dstId != 0U && (duid == DUID::LDU1 || duid == DUID::LDU2)) {
if (m_p25->m_netLastDstId != dstId && (m_p25->m_netTGHang.isRunning() && !m_p25->m_netTGHang.hasExpired())) {
if (m_debug) {
LogDebugEx(LOG_NET, "Voice::checkNetTrafficCollision()", "dropping frames, because dstId does not match and network TG hang timer is running, netLastDstId = %u, dstId = %u",
m_p25->m_netLastDstId, dstId);
}
return true;
}

Loading…
Cancel
Save

Powered by TurnKey Linux.