consider peer IDs for systems the conference bridge is peered to for inclusion/exclusion lists;

pull/48/head
Bryan Biedenkapp 2 years ago
parent bd3a947964
commit 71438abb87

@ -1,7 +1,7 @@
# #
# Digital Voice Modem - Host Software Configuration (FNE Conference Bridge Mode) # Digital Voice Modem - Conference FNE Software Configuration
# #
# @package DVM / Host Software # @package DVM / Conference FNE Software
# #
# Flag indicating whether the host will run as a background or foreground task. # Flag indicating whether the host will run as a background or foreground task.

@ -229,6 +229,13 @@ bool TagDMRData::processFrame(const uint8_t* data, uint32_t len, uint32_t peerId
// repeat traffic to upstream peers // repeat traffic to upstream peers
if (m_network->m_host->m_peerNetworks.size() > 0) { if (m_network->m_host->m_peerNetworks.size() > 0) {
for (auto peer : m_network->m_host->m_peerNetworks) { for (auto peer : m_network->m_host->m_peerNetworks) {
uint32_t peerId = peer.second->getPeerId();
// is this peer ignored?
if (!isPeerPermitted(peerId, dmrData, streamId)) {
continue;
}
peer.second->writeMaster({ NET_FUNC_PROTOCOL, NET_PROTOCOL_SUBFUNC_DMR }, data, len, pktSeq, streamId); peer.second->writeMaster({ NET_FUNC_PROTOCOL, NET_PROTOCOL_SUBFUNC_DMR }, data, len, pktSeq, streamId);
} }
} }

@ -201,6 +201,13 @@ bool TagNXDNData::processFrame(const uint8_t* data, uint32_t len, uint32_t peerI
// repeat traffic to upstream peers // repeat traffic to upstream peers
if (m_network->m_host->m_peerNetworks.size() > 0) { if (m_network->m_host->m_peerNetworks.size() > 0) {
for (auto peer : m_network->m_host->m_peerNetworks) { for (auto peer : m_network->m_host->m_peerNetworks) {
uint32_t peerId = peer.second->getPeerId();
// is this peer ignored?
if (!isPeerPermitted(peerId, lc, messageType, streamId)) {
continue;
}
peer.second->writeMaster({ NET_FUNC_PROTOCOL, NET_PROTOCOL_SUBFUNC_NXDN }, data, len, pktSeq, streamId); peer.second->writeMaster({ NET_FUNC_PROTOCOL, NET_PROTOCOL_SUBFUNC_NXDN }, data, len, pktSeq, streamId);
} }
} }

@ -243,6 +243,13 @@ bool TagP25Data::processFrame(const uint8_t* data, uint32_t len, uint32_t peerId
// repeat traffic to upstream peers // repeat traffic to upstream peers
if (m_network->m_host->m_peerNetworks.size() > 0) { if (m_network->m_host->m_peerNetworks.size() > 0) {
for (auto peer : m_network->m_host->m_peerNetworks) { for (auto peer : m_network->m_host->m_peerNetworks) {
uint32_t peerId = peer.second->getPeerId();
// is this peer ignored?
if (!isPeerPermitted(peerId, control, duid, streamId)) {
continue;
}
peer.second->writeMaster({ NET_FUNC_PROTOCOL, NET_PROTOCOL_SUBFUNC_P25 }, data, len, pktSeq, streamId); peer.second->writeMaster({ NET_FUNC_PROTOCOL, NET_PROTOCOL_SUBFUNC_P25 }, data, len, pktSeq, streamId);
} }
} }

Loading…
Cancel
Save

Powered by TurnKey Linux.