diff --git a/p25/TrunkPacket.cpp b/p25/TrunkPacket.cpp index 5be696c5..5b5ad56c 100644 --- a/p25/TrunkPacket.cpp +++ b/p25/TrunkPacket.cpp @@ -2119,10 +2119,15 @@ bool TrunkPacket::writeRF_TSDU_Grp_Aff_Rsp(uint32_t srcId, uint32_t dstId) // validate the talkgroup ID if (m_rfTSBK.getGroup()) { - if (!acl::AccessControl::validateTGId(dstId)) { - LogWarning(LOG_RF, P25_TSDU_STR ", TSBK_IOSP_GRP_AFF (Group Affiliation Response) denial, TGID rejection, dstId = %u", dstId); - ::ActivityLog("P25", true, "group affiliation request from %u to %s %u denied", srcId, "TG ", dstId); - m_rfTSBK.setResponse(P25_RSP_DENY); + if (dstId == 0U) { + LogWarning(LOG_RF, P25_TSDU_STR ", TSBK_IOSP_GRP_AFF (Group Affiliation Response), TGID 0, dstId = %u", dstId); + } + else { + if (!acl::AccessControl::validateTGId(dstId)) { + LogWarning(LOG_RF, P25_TSDU_STR ", TSBK_IOSP_GRP_AFF (Group Affiliation Response) denial, TGID rejection, dstId = %u", dstId); + ::ActivityLog("P25", true, "group affiliation request from %u to %s %u denied", srcId, "TG ", dstId); + m_rfTSBK.setResponse(P25_RSP_DENY); + } } }