OpenWrt sscanf问题之于MT7620N与AR9341

在MT7620N平台做好了wifidog的相关调试工作,除了eth驱动,wireless性能问题,其余的都可以基本正常。根据实际需要要对已完成的工作在AR9341平台上实现。

其实也简单,基本功能类似,主要就是针对交换机的配置。

在测试限速功能的时候,发现了大问题。

因为之前在MT7620N的时候发现上传限速不起作用,后来发现是接口的问题,要限制获取wan ip的接口。

这里是完全不正常。

tc disc show 显示了些信息但是,不懂,需要继续学习啊。

tc -s class show dev br-lan 执行这个是有信息的

tc -s filter show dev br-lan 但是到了这个就没有了。

问了高人,说是filter才是限制某个IP的速度的!

后来就在设置这些的地方加调试信息,果然发现程序在sscanf这里返回了。

unsigned short flowid;

sscanf(ip, "%*d.%*d.%*d.%u", flowid);

这里的flowid是0. 明显不符合正常IP.

使用SDK写了个测试程序,发现问题这里如果定义为int flowid就OK.

最后我总结这个问题为编译器版本问题,或者是(系统架构问题?)。

时间: 2024-12-20 12:46:18

OpenWrt sscanf问题之于MT7620N与AR9341的相关文章

OpenWrt 开发版本主trunk MT7620N 无线驱动bug

环境: OpenWrt Development Trunk: svn co svn://svn.openwrt.org/openwrt/trunk/ BUG: 1. 无线无法建立连接. 2. 无线建立连接获取IP地址失败,断开连接. 出现问题的时候会伴随以下dmesg [ 3702.380000] ieee80211 phy0: rt2x00queue_write_tx_frame: Error - Dropping frame due to full tx queue 2 [ 3702.390

OpenWRT系统MT7620N芯片的无线BSSID问题

BSSID的值是路由器无线MAC地址,具体相信IEEE 802.11规范. MAC地址在路由器上存储位置一半为Factory/factory分区的第四个字节(从0开始),小端字节序. Factory分区: dd if=/dev/mtdblock2 of=/dev/factory Mac地址为: 8c:88:2b:00:00:24 The BSSID included in the MAC Header transmitter address field of a Beacon frame whe

openwrt mt7620n双SSID实现原理

转载请注明出处: [钱国正的专栏http://blog.csdn.net/qianguozheng/article/details/37574373] 前言 为了满足客户需要,需要建立私有专用SSID,和共有共用SSID,这就需要用到双SSID. 原理 无线网卡驱动支持多SSID,通过不同的SSID可以划分不同的用户使用范围,但是不同的SSID的测试带宽.性能等同样需要考究. 技术困难 实现多SSID本来是不难的,但是对于一个新手来说还是有一定的挑战性,尤其是对于要到一个新的平台上openwrt

OpenWrt 主的发展版本号trunk MT7620N 无线驱动程序bug

周边环境: OpenWrt Development Trunk: svn co svn://svn.openwrt.org/openwrt/trunk/ BUG: 1. 无线无法建立连接. 2. 无线建立连接获取IP地址失败,断开连接. 出现故障的时候会伴随下面dmesg [ 3702.380000] ieee80211 phy0: rt2x00queue_write_tx_frame: Error - Dropping frame due to full tx queue 2 [ 3702.3

OpenWrt MT7620N SoC关于ralink无线驱动的一些问题

- OpenWrt 无线驱动采用wireless.kernel.org的开源版本, backports. - 我们采用qdk 版本的开源版本(无线驱动从Ralink的驱动移植过来). 期间遇到各种问题总结: 1. UI问题,未显示Station, 不能设置Channel,加密我们自己添加上去的. 2. Ralink驱动问题, 建立双ssid,位于不同vlan下,多次切换会导致客户端访问不了网络.--已经想办法规避了,只是这种做法不好. 还需要解决的问题 1. 连接无线会自动切换到其他SSID--

OpenWrt 系统定制WR841N Reset Button不工作

前言: 移植AR9341到开发板上,64M RAM, 8M ROM, 工作内容就是系统能跑起来,最好无线性能好,但是这个真的不是我的目前能搞定的. 开始: 从openwrt trunk上下载最新正在开发的trunk,但是编译还是遇到问题(之前编译的mt7620n),改编AR9341后编译出来的结果并不理想.有很多WR841N的版本 1, 1.1,3,5,7 唯独没有我想要的v8.无奈之下只好求救于各种论坛,讨论群,可是仍然没有发现.最后是在openwrt 的主页上找到了wiki.openwrt.

OpenWRT GPIO口控制 WLED

Linux系统下GPIO系统架构介绍 关于这个GPIO很久以前一直以为很简单,但是,当你需要给一个特定的系统,搞这些GPIO的时候,你会发现,事实并不是如此,比如,mt7620n. GPIO#72是控制WLED -> WLAN LED. GPIO#40~44是控制WAN, LANLED. GPIO#1是控制Reset 这些东西以为自己写一个GPIO driver就完成了,其实没有那么简单,光是这个小驱动你怎么编译都比较麻烦,所以还是乖乖的学习OpenWRT的系统架构吧. 这里要说道重点dts.这

WE-1202 (JGX-X5 v1.3)刷openwrt

当前固件版本显示 固件版本 RippleOS硬件型号 RippleTek WE-1202CPU型号是 MT7620N路由主板上面丝印是 JGX-X5  v1.3 买的时候选择的RippleOS固件,后来升级后,发现访问网页竟然被插入了JS.开始以为是电信搞的鬼,最后发现是自己路由器干的. 想刷openwrt,但不知道具体对应哪个型号硬件.选了一个通用的,但不能启动. 翻到卖家广告里面有截图显示有ASUS RT-N14U 和 WHR-300HP2 在 http://downloads.openwr

迅捷路由器FR300改装   OpenWrt系统,加SS,汉化

先在网上买了片16M闪寸和64M  内存,请商家写好了个 OpenWrt 系统(版本随便,但芯片要一样,不能写错.方便自己好升级其他的版本,我的是AR9341,用的是TL-WR 841 V8的固件,TP的固件)  ,吹掉原来的闪存与内存,焊上购买的闪存与内存,需要点手艺.(需要4M以上的闪寸,最好64M的内存就够了) 动手之前一定要有个有效的 Shadowsocks 帐号,没有帐号没有效果,也可以先改造,有了帐号再填进去.    选对应OpenWrt系统写入路由内,官版是英文,进入后先加密码,而