查找Wps 关闭使能后通过按键依旧可以连接的原因

Wps 功能 ----查找网页使能关闭wps,按键依旧能启动wps原因

大致思路就是通过提交记录定位代码位置,这样大大提高效率,其次就是大致一览网页(cgi后端)关于wps操作细节,可以发现不管是读取(get)还是设置(post)都没有对wps开关cfg值(我们自己定义的)转化为tcapi值(mtk);因此思路关键就在这一部分,怎么拿到wps开关tcapi值,然后按键再去判断,注意有2.4G和5G,以下是操作记录:耗时一天。
在这里插入图片描述

  • 查找wps所有提交记录:
git lg -500 | grep wps

在这里插入图片描述

在这里插入图片描述

  • wps按钮设备文件:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • globalstate节点:

在这里插入图片描述

  • mesh_agent为1为2 是组网状态:

在这里插入图片描述

  • cfg变量mesh_agent为1时是主,为2是从

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  • 查看wps_button_type等于1时:
grep -nri 'wps_button_type=='

在这里插入图片描述

在这里插入图片描述

  • 查看wps_button_type定义在哪里:
grep -nri 'wps_button_type' | grep int
vim ledctrl.c +1036

在这里插入图片描述


网页上读取下方节点:

可以知道wps开关状态cfg值

wlan2G_wps_swittch -> USR_WLAN2G_WPS_SWITCH
wlan2g_wps_mode -> USR_WPS_WPSMODE

在这里插入图片描述
网页关于wpsjson值一览:

在这里插入图片描述

在这里插入图片描述
启动wps脚本一览:

在这里插入图片描述

查看WLAN_COMMON_NODE定义:

在这里插入图片描述
查看INFO_WLAN_NODE定义:

在这里插入图片描述
最终定位代码修改位置:追加判断位

在这里插入图片描述

memset(nodeName, 0, sizeof(nodeName));
snprintf(nodeName, sizeof(nodeName), WLAN11AC_ENTRY1_NODE);
cfg_get_object_attr(nodeName, "WPSConfMode", tmp1, sizeof(tmp1));
if(!strcmp(tmp, "1") && 7==atoi(tmp1)){
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值