Include secondary TGs in default block for TS1 TGs
This commit is contained in:
parent
89836def2f
commit
352503b823
17
DMRSlot.cpp
17
DMRSlot.cpp
|
@ -1483,15 +1483,18 @@ bool CDMRSlot::DstIdBlacklist(unsigned int did, unsigned int slot)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
//is dst id whitelisted or, if ID is greater than or equal to 4000
|
|
||||||
bool CDMRSlot::DstIdWhitelist(unsigned int did, unsigned int slot, bool gt4k)
|
bool CDMRSlot::DstIdWhitelist(unsigned int did, unsigned int slot, bool gt4k)
|
||||||
{
|
{
|
||||||
if (slot == 1) {
|
if (slot == 1) {
|
||||||
if(m_dstWhiteListSlot1.size == 0)
|
if(m_dstWhiteListSlot1.size == 0)
|
||||||
return;
|
return;
|
||||||
|
// No reflectors on slot1, so we only allow all IDs over 10000 unless specifically whitelisted
|
||||||
if(gt4k) {
|
if(gt4k) {
|
||||||
if (std::find(m_dstWhiteListSlot1.begin(), m_dstWhiteListSlot1.end(), did) != m_dstWhiteListSlot1.end() || did >= 4000)
|
if (std::find(m_dstWhiteListSlot1.begin(), m_dstWhiteListSlot1.end(), did) != m_dstWhiteListSlot1.end() || did >= 10000) {
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (std::find(m_dstWhiteListSlot1.begin(), m_dstWhiteListSlot1.end(), did) != m_dstWhiteListSlot1.end())
|
if (std::find(m_dstWhiteListSlot1.begin(), m_dstWhiteListSlot1.end(), did) != m_dstWhiteListSlot1.end())
|
||||||
return true;
|
return true;
|
||||||
|
@ -1499,9 +1502,17 @@ bool CDMRSlot::DstIdWhitelist(unsigned int did, unsigned int slot, bool gt4k)
|
||||||
} else {
|
} else {
|
||||||
if(m_dstWhiteListSlot2.size == 0)
|
if(m_dstWhiteListSlot2.size == 0)
|
||||||
return;
|
return;
|
||||||
|
//On slot2 we allow reflector control IDs, but not secondary TG IDs unless specifically listed
|
||||||
if(gt4k) {
|
if(gt4k) {
|
||||||
if (std::find(m_dstWhiteListSlot2.begin(), m_dstWhiteListSlot2.end(), did) != m_dstWhiteListSlot2.end() || did >= 4000)
|
if (std::find(m_dstWhiteListSlot2.begin(), m_dstWhiteListSlot2.end(), did) != m_dstWhiteListSlot2.end() || did >= 4000) {
|
||||||
|
|
||||||
|
//if dstId in secondary TG range
|
||||||
|
if(did > 5000 && did < 10000)
|
||||||
|
return false;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (std::find(m_dstWhiteListSlot2.begin(), m_dstWhiteListSlot2.end(), did) != m_dstWhiteListSlot2.end())
|
if (std::find(m_dstWhiteListSlot2.begin(), m_dstWhiteListSlot2.end(), did) != m_dstWhiteListSlot2.end())
|
||||||
return true;
|
return true;
|
||||||
|
|
Loading…
Reference in a new issue