|
reaver在ar7xxx/9xxx下不能正常工作很久了。问题主要出现在以下两个地方:
一,最主要的,ar7xxx/9xxx平台基本都是big endian。老版reaver(版本低于1.52的)不支持Big endian。新版本支持了,但是编译是openwrt并没有把编译成big endian的参数传递给reaver。
二,对于新版的运行支持库libpcap(高于1.11版),reaver调用都会多少出现问题。
解决方案:
!!!前提:检测自己的运行平台是不是big endian的。方法:下载bigendian附件,解压到package/utils目录下。运行make menuconfig,在Utilities里面就会出现一个bigendian的组件,编译他,安装到你的运行平台,运行。看结果是big endian还是little endian。
如果是big endian,你可一接着往下看。否则,你可以撤了,省时间。
首先解决big endian的问题,feeds update后,找到reaver的openwrt的Makefile文件,一般在openwrt/openwrt/feeds/packages/net/reaver/文件夹里,打开Makefile,在
include $(INCLUDE_DIR)/package.mk
CONFIGURE_PATH:=src
MAKE_PATH:=src
的下面添加
TARGET_CFLAGS += \
-DENDIANNESS_LE=0
注意:TARGET_CFLAGS 前面无空格, -DENDIANNESS_LE=0前面是TAB不是四个空格或者八个空格
然后解决libpcap的问题,找到老版的openwrt,把用于libpcap1.1.1的openwrt的Makefile以及patches下载下来替换掉当前版本的,位置一般在openwrt/package/libs/libpcap/文件夹下。最佳操作下载下来需要的后,把libpcap文件夹里清光,再把下载的复制进去。
你们要是懒得找,我打完字看能不能上传附件。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|