微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > z-stack协调器加入白名单的方法。

z-stack协调器加入白名单的方法。

时间:10-02 整理:3721RD 点击:
第一种方法,在Zmac_cb.c文件中,找到函数MAC_CbackEvent,这个函数是MAC层把消息上传给NWK层的,可以过滤AssoReq命令。这个地方是判断MAC层生成的消息,并进一步传递给NWK,在传递给NWK前要用osal_msg_allocate分配消息空间,同时会进行一些预处理。其中有个对MAC_MCPS_DATA_IND事件的预处理,就是收到错误的数据包直接return,不上传给NWK。
我们可以在这里添加一个else if(event == MAC_MLME_ASSOCIATE_IND),然后判断pData->associateInd.deviceAddress是否合法,不合法直接return。

第二种方法,在ZDApp.c中找到ZDO_JoinIndicationCB,这里是直接接驳NWK层处理加入网络请求的。可以处理JOIN和REJOIN两种事件。参数type是加入网络的方式,ShortAddress是NWK分配好的网络地址,ExtendedAddress是加入网络的设备的物理地址。在这个地方加入白名单验证,不合法的,直接返回ZFailure。

谢谢分享 :)

谢谢分享,楼主可以加入EE技术群。楼主可以解释下白名单这个概念嘛?

晕死,白名单是一个数据库的概念,文科生程序猿玩的东西。
协调器上只是对加入网络的节点做一个物理地址过滤。协调器只要事先录入节点的物理地址,节点就能加入网络,节点上不用设置任何输入端口。

长见识了,看来我这个软件出生的都out了。竟然数据库有白名单的概念

其实搞软件的基本上是文科生干的事情,什么C#,VB,SQL之类的,

不会吧?我们院原来都不招文科的,11年才招的。

我们学校计算机学院有个信息管理专业,也招文科生,要学数电和单片机,自从划给经济管理学院后就不用学了。
听说西安电子科技大学中文系要还要学电磁场与电磁波。

好帖子,支持一下

好贴,学习了

你好,你的白名单库是存哪里的?

谢谢楼主指点,不过我听到的说法不一样

好贴,我也来学习下。最近正在做这方面的

好帖子顶起

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top