查找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)){


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部