君正T31编译wpa_supplicant-2.9
wpa_supplicant-2.9
下载地址:
https://w1.fi/wpa_supplicant/
wpa_supplicant-2.9 支持的新特性 802.11i
支持的WPA / IEEE 802.11i功能:
-WPA-PSK(“ WPA-个人”)
-使用EAP的WPA(例如,使用RADIUS身份验证服务器)(“ WPA-Enterprise”)
集成的IEEE 802.1X支持以下身份验证方法
请求者:
EAP-TLS
EAP-PEAP / MSCHAPv2(PEAPv0和PEAPv1)
EAP-PEAP / TLS(PEAPv0和PEAPv1)
EAP-PEAP / GTC(PEAPv0和PEAPv1)
EAP-PEAP / OTP(PEAPv0和PEAPv1)
EAP-PEAP / MD5-挑战(PEAPv0和PEAPv1)
EAP-TTLS / EAP-MD5-挑战
EAP-TTLS / EAP-GTC
EAP-TTLS / EAP-OTP
EAP-TTLS / EAP-MSCHAPv2
EAP-TTLS / EAP-TLS
EAP-TTLS / MSCHAPv2
EAP-TTLS / MSCHAP
EAP-TTLS / PAP
EAP-TTLS / CHAP
EAP卡
EAP-AKA
EAP-AKA'
EAP-PSK
EAP-PAX
EAP-清酒
EAP-IKEv2
EAP-GPSK
EAP-密码
LEAP(注意:需要驱动程序对IEEE 802.11的特殊支持
验证)
(支持以下方法,但由于它们不会生成键控
材料,它们不能与WPA或IEEE 802.1X WEP密钥一起使用)
EAP-MD5-挑战
EAP-MSCHAPv2
EAP-GTC
EAP-OTP
-CCMP,TKIP,WEP104,WEP40的密钥管理
-RSN / WPA2(IEEE 802.11i)
预认证
* PMKSA缓存
支持的TLS /密码库:
-OpenSSL(默认)
-GnuTLS
内部TLS /加密实施(可选):
-可以代替外部TLS /密码库使用
-TLSv1
-X.509证书处理
-PKCS#1
-ASN.1
-RSA
-bignum
-最小尺寸(大约50 kB二进制文件,WPA已经需要其中的一部分;
TLSv1 / X.509 / ASN.1 / RSA / bignum部件在x86上约为25 kB)
什么是802.11i
-
802白皮书的链接,有兴趣的同学可以翻翻
http://ieee802.org/16/liaison/docs/80211-05_0123r1.pdfIEEE 802.11i-2004或简称802.11i是对原始IEEE 802.11的修正,实现为Wi-Fi保护访问II(WPA2)。 该标准草案于2004年6月24日获得批准。该标准规定了无线网络的安全性机制,并用“安全性”条款代替了原始标准的“身份验证”简短条款。 修正了WEP的不安全性。
wpa_supplicant-2.9
最低要求linux环境:
Linux kernel 2.4.x or 2.6.x with Linux Wireless Extensions v15 or newer
其中wpa_supplicant 对 openssl 和 libnl 有版本要求。
未完待续!
下载openssl
step1:
./config --prefix=/home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/res/wpa_supplicant-2.9/openssl.install os/compiler:/home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/toolchain/mips-gcc472-glibc216-64bit/bin/mips-linux-gnu-gcc
step2:
make
setp3:
make install
注意:这样编译不会生成动态库,所以编译wpa_supplicant的时候就要采用静态编译,或者在./config的时候添加shared 字段
编译
libnl:https://www.infradead.org/~tgr/libnl/files/libnl-1.1.4.tar.gz
./configure --prefix=/home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/res/wpa_supplicant-2.9/libnl.install --host= mips-linux-gnu
打开Makefile.opts
vi Makefile.opts
CC := /home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/toolchain/mips-gcc472-glibc216-64bit/bin/mips-linux-gnu-gcc
CFLAGS := -g -O2
LDFLAGS :=
CPPFLAGS :=
PACKAGE_NAME := libnl
PACKAGE_VERSION := 1.1.4
LIBNL_LIB := -lm -lpthread
prefix := /home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/res/wpa_supplicant-2.9/libnl.install
exec_prefix := ${prefix}
libdir := ${exec_prefix}/lib
includedir := ${prefix}/include
mandir := ${prefix}/share/man
sysconfdir := ${prefix}/etc
AR := ar
RM := rm
LN := ln
DEPFLAGS += -M -I../include/ -I. $(CPPFLAGS)
CFLAGS += -g -I./include -I../include -I. $(CPPFLAGS) -D_GNU_SOURCE
MAKEFLAGS += --no-print-directory
ifeq ($(CC),gcc)
CFLAGS += -Wall -ggdb
endif
修改成上面路径
step2:
make
make install
在配置wpa_supplicant时注意的几点:
注意点一:
将动态连接库放进rootfs:
readelf -d wpa_supplicant
Dynamic section at offset 0x19c contains 32 entries:
Tag Type Name/Value
0x00000001 (NEEDED) Shared library: [librt.so.1]
0x00000001 (NEEDED) Shared library: [libnl.so.1]
0x00000001 (NEEDED) Shared library: [libdl.so.2]
0x00000001 (NEEDED) Shared library: [libc.so.6]
0x0000000c (INIT) 0x40224c
0x0000000d (FINI) 0x612530
0x00000004 (HASH) 0x4002c4
0x00000005 (STRTAB) 0x4013c4
0x00000006 (SYMTAB) 0x4007d4
0x0000000a (STRSZ) 1824 (bytes)
0x0000000b (SYMENT) 16 (bytes)
0x70000016 (MIPS_RLD_MAP) 0x68d020
0x00000015 (DEBUG) 0x0
0x00000003 (PLTGOT) 0x68d030
0x00000011 (REL) 0x401cd4
0x00000012 (RELSZ) 40 (bytes)
0x00000013 (RELENT) 8 (bytes)
0x70000001 (MIPS_RLD_VERSION) 1
0x70000005 (MIPS_FLAGS) NOTPOT
0x70000006 (MIPS_BASE_ADDRESS) 0x400000
0x7000000a (MIPS_LOCAL_GOTNO) 6
0x70000011 (MIPS_SYMTABNO) 191
0x70000012 (MIPS_UNREFEXTNO) 41
0x70000013 (MIPS_GOTSYM) 0xbd
0x00000014 (PLTREL) REL
0x00000017 (JMPREL) 0x401cfc
0x00000002 (PLTRELSZ) 1360 (bytes)
0x70000032 (MIPS_PLTGOT) 0x684014
0x6ffffffe (VERNEED) 0x401c64
0x6fffffff (VERNEEDNUM) 2
0x6ffffff0 (VERSYM) 0x401ae4
可以看到需要的动态连接库名称。
如果自己文件系统中没有以上库,ln -s 创建软连接即可。
注意点二:
cp defconfig .config
打开.config 配置一下几个路径,指定openssl和libnl
# Uncomment following two lines and fix the paths if you have installed OpenSSL
# or GnuTLS in non-default location
CFLAGS += -I/home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/res/wpa_supplicant-2.6/openssl.install/include
CFLAGS += -I/home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/res/wpa_supplicant-2.6/libnl.install/include
LIBS += -L/home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/res/wpa_supplicant-2.6/libnl.install/lib
LIBS += -L/home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/res/wpa_supplicant-2.6/libnl-1.1.4/lib
LIBS += -L/home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/res/wpa_supplicant-2.6/openssl.install/lib
LIBS_p += -L/home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/res/wpa_supplicant-2.6/openssl.install/lib
CC=/home/lwx/workspace/sdk/t31/Ingenic-SDK-T31-1.1.0-20200115/toolchain/mips-gcc472-glibc216-64bit/bin/mips-linux-gnu-gcc -L$(LIBS)
把里面的路径换成自己的交叉编译工具路径。
- 分享
- 举报
-
浏览量:2734次2020-07-28 10:58:45
-
浏览量:2536次2020-07-28 10:56:05
-
浏览量:5596次2021-05-31 17:08:23
-
浏览量:5078次2021-05-31 17:00:35
-
浏览量:9823次2020-04-16 11:05:11
-
浏览量:7407次2020-07-28 19:05:15
-
浏览量:6108次2021-04-07 18:53:43
-
浏览量:3966次2020-10-12 17:33:14
-
浏览量:4040次2021-05-07 17:10:16
-
浏览量:2426次2020-04-16 13:20:10
-
浏览量:13208次2020-11-14 10:44:48
-
浏览量:988次2024-01-24 18:28:37
-
浏览量:4138次2020-10-29 19:20:24
-
浏览量:5627次2020-10-29 19:40:14
-
浏览量:854次2024-01-24 15:46:44
-
浏览量:1928次2022-11-11 11:38:04
-
浏览量:1191次2024-03-15 09:51:11
-
浏览量:6497次2018-08-28 16:40:09
-
浏览量:1517次2024-03-16 10:01:36
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
JZ_hacker
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明