请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:CC2652P 主题中讨论的其他器件:Z-STACK
我已经研究过 Z-stack 3.0.2上的"安全帧计数器"处理
// check frame counter
linkInfo = nwkNeighborGetLinkInfo( dataInd->mac.srcAddr.addr.shortAddr, dataInd->mac.srcPanId );
if ( linkInfo )
{
keySeqNum = *(dataInd->msdu.p + ff.hdrLen + NWK_AUX_HDR_LEN - 1);
// check if the frame counter needs to be reset
if ( linkInfo->inKeySeqNum != keySeqNum )
{
linkInfo->inKeySeqNum = keySeqNum;
linkInfo->inFrmCntr = 0;
}
rcvdFrmCntr = osal_build_uint32( dataInd->msdu.p + ff.hdrLen + 1, 4 );
if ( rcvdFrmCntr < linkInfo->inFrmCntr )
{
return; // Bad frm count
}
else
{
linkInfo->inFrmCntr = rcvdFrmCntr + 1;
}
}
我们可以看到、当当前存储的 帧计数器为0xFFFFFFFF 但接收到的帧计数器为0时、传入的消息将 被忽略。 SDK 7.10是否解决了此问题?