hostapd阅读(openwrt)-1
好久没有来博客园写点东西了,这段时间主要搞了openwrt系统的移植,无线的校验等相关工作,鉴于我是一个懒惰的大龄菜鸟程序员,就先自我原谅自己了,好了废话少说,直奔主题--hostapd。
由于我主要从事OP的相关开发,故我们先来了解hostapd, hostapd-full, wpad, wpad-mini, supplicant等等,hostapd按照官方的说法是:“用户层无线接入管理守护程序:包括IEEE 802.1X/WPA/EAP认证器,RADIUS client, EAP server, and RADIUS authentication server,它目前主要支持基于HostAP,prism54, madwifi, mac80211的无线驱动框架”。hostadp-full通过编译时选择更多的组件(参考full-mini.patch文件),wpad是基于hostapd的编译移植版本。
--- files/hostapd-full.config -- ::21.708727013 +
+++ files/hostapd-mini.config -- ::21.708727013 +
@@ -, +, @@
#CONFIG_DRIVER_NONE=y # IEEE 802.11F/IAPP
-CONFIG_IAPP=y
+# CONFIG_IAPP=y # WPA2/IEEE .11i RSN pre-authentication
CONFIG_RSN_PREAUTH=y
@@ -, +, @@
#CONFIG_IEEE80211W=y # Integrated EAP server
-CONFIG_EAP=y
+#CONFIG_EAP=y # EAP-MD5 for the integrated EAP server
-CONFIG_EAP_MD5=y
+#CONFIG_EAP_MD5=y # EAP-TLS for the integrated EAP server
-CONFIG_EAP_TLS=y
+#CONFIG_EAP_TLS=y # EAP-MSCHAPv2 for the integrated EAP server
-CONFIG_EAP_MSCHAPV2=y
+#CONFIG_EAP_MSCHAPV2=y # EAP-PEAP for the integrated EAP server
-CONFIG_EAP_PEAP=y
+#CONFIG_EAP_PEAP=y # EAP-GTC for the integrated EAP server
-CONFIG_EAP_GTC=y
+#CONFIG_EAP_GTC=y # EAP-TTLS for the integrated EAP server
-CONFIG_EAP_TTLS=y
+#CONFIG_EAP_TTLS=y # EAP-SIM for the integrated EAP server
#CONFIG_EAP_SIM=y
@@ -, +, @@
#CONFIG_EAP_FAST=y
# Wi-Fi Protected Setup (WPS)
-CONFIG_WPS=y
-CONFIG_WPS2=y
+#CONFIG_WPS=y
# Enable UPnP support for external WPS Registrars
#CONFIG_WPS_UPNP=y @@ -, +, @@ # PKCS# (PFX) support (used to read private key and certificate file from
# a file that usually has extension .p12 or .pfx)
-CONFIG_PKCS12=y
+#CONFIG_PKCS12=y # RADIUS authentication server. This provides access to the integrated EAP
# server from external hosts using RADIUS.
#CONFIG_RADIUS_SERVER=y # Build IPv6 support for RADIUS operations
-CONFIG_IPV6=y
+#CONFIG_IPV6=y # IEEE Std .11r- (Fast BSS Transition)
-CONFIG_IEEE80211R=y
+#CONFIG_IEEE80211R=y # Use the hostapd's IEEE 802.11 authentication (ACL), but without
# the IEEE 802.11 Management capability (e.g. FreeBSD/net80211)
@@ -, +, @@
#CONFIG_NO_STDOUT_DEBUG=y # Remove support for RADIUS accounting
-#CONFIG_NO_ACCOUNTING=y
+CONFIG_NO_ACCOUNTING=y # Remove support for RADIUS
-#CONFIG_NO_RADIUS=y
+CONFIG_NO_RADIUS=y # Remove support for VLANs
#CONFIG_NO_VLAN=y CONFIG_TLS=internal
-CONFIG_INTERNAL_LIBTOMMATH=y
-CONFIG_INTERNAL_AES=y
-NEED_AES_DEC=y
CONFIG_NO_RANDOM_POOL=y
CONFIG_NO_DUMP_STATE=y -CONFIG_WPS=y
-CONFIG_FULL_DYNAMIC_VLAN=y
-
CONFIG_UBUS=y
hostapd的配置相关说明可以参考:http://linuxwireless.org/en/users/Documentation/hostapd/ 说到底hostapd可以说是一个交互中介,用于通过nl80211用户与驱动子层(cfg80211与mac80211)进行交互管理。
好了,关于hostapd就说到这里面吧,源码下载地址:http://w1.fi/hostapd/ , 我们要想分析好hostapd源码,我们首先需要对hostapd的源码树与数据结构进行熟悉:
源码树:http://w1.fi/wpa_supplicant/devel/code_structure.html,数据结构:http://w1.fi/wpa_supplicant/devel/annotated.html,好了,下一篇博客将详细说明几个重要的源码文件与数据结构。
hostapd阅读(openwrt)-1的更多相关文章
- hostapd阅读(openwrt)-3
从官网下载相对而言比较干净的源码版本http://w1.fi/hostapd/,然后将其移植到openwrt下,方便在源码阅读时候进行调试编译,移植的过程总结如下心得. 1. openwrt编译与cl ...
- hostapd阅读(openwrt)-2
深入追踪openwrt下的hostapd之后,发现openwrt无线管理机制格外的复杂,几乎所以的触发与回调均离不开ubus,关于ubus这里不作解释,先大概了解其用途即可(出门左转:https:// ...
- hostapd阅读(openwrt)-4
接下来,咱们来看看hostapd的源码目录之hostapd,今天我们先分析整体功能,然后从main.c开始注释 hostapd下代码主要作用有:配置解析,环境初始化,控制接口建立,AP接口管理模块. ...
- 【openwrt】再设置
https://wiki.openwrt.org/zh-cn/doc/uci/network https://wiki.openwrt.org/zh-cn/doc/uci/wireless https ...
- OpenWrt 路由器如何让 lan 口主机获得 ipv6 网络访问 -- 知乎
本文转自知乎: OpenWrt 路由器如何让 lan 口主机获得 ipv6 网络访问? - mistforest的回答 - 知乎https://www.zhihu.com/question/29667 ...
- openwrt 更改 debug 等级(hostapd)
https://wiki.openwrt.org/doc/devel/debugging 调试hostapd,其中hostapd的调试等级如下: # Levels (minimum value for ...
- OpenWrt笔记
## 1. OpenWrt目录结构说明 作者:辛勤的摆渡人 来源:CSDN 原文:https://blog.csdn.net/hunter168_wang/article/details/507805 ...
- CentOS_7 OpenWrt Eclipse 环境搭建与 Dr.com 开发笔记
一:内核的编译. 1,linux 编译环境的搭建与源码的准备工作 2,常用软件的安装 (make menuconfig) 3, 针对TP-Link WR740N 一些软件的openwrt 的移植 4 ...
- OpenWrt——神奇的路由系统
鉴于最近大家对这个系统比较感兴趣而且疑问很多所以本渣就整理下我对这个系统的理解和最实用的802.1x认证的理解.还望大家多多互相交流. 如果您时间紧张直接看最后的步骤,时间充裕的请仔细阅读,理解. O ...
随机推荐
- bugku社工writeup
最近bugku的web和杂项刷了多半,突然心血来潮想试试社工题,bugku的社工题比较基础,而且题量不多,和大家分享一下writeup. 1.密码 根据提示,多猜几次密码就对了,然后得到flag. 2 ...
- swift对象存储安装
对象存储服务概览 OpenStack对象存储是一个多租户的对象存储系统,它支持大规模扩展,可以以低成本来管理大型的非结构化数据,通过RESTful HTTP 应用程序接口. 它包含下列组件: 代理服务 ...
- Mybatis 动态insert语句
mybatis的一个比较先进的思想是把Sql语句写在了配置xml文件(也支持注解),通过配置文件的方式,免去了一般软件开发的硬编码,当业务需求改变的时候,只需要更改sql语句即可! 下面是个人在学习m ...
- 113资讯网:安装程序进入Admin后台出现:SQLSTATE[HY000] [1045] Access denied for user'root'@'localhost' (using password: YES)
各项设置设置正确,就是出现这种原因! 1.config.inc.php解决办法: 修改phpMyAdmin的配置文件里的密码设置,进入phpMyAdmin的安装目录,找到config.inc.php配 ...
- SpringCloud之zuul
- 如何提高CSS性能?CSS优化、提高性能提升总汇
如何提高CSS性能,根据页面的加载性能和CSS代码性能,主要表现为: 加载性能 (主要是从减少文件体积,减少阻塞加载,提高并发方面入手),选择器性能,渲染性能,可维护性. 1.尽量将样式写在单独的 ...
- 如何写出高性能的CSS3动画
小伙伴们在写CSS3动画时,会发现在手机上很多时候会感到卡顿,然后Google到的解决方案大多是开启GPU加速transform: translate3d(0,0,0); 可解决,但是为什么开启GPU ...
- 虚拟机中Linux环境搭建
Linux系统搭建 作为一名软件测试资深工程师,在日常工作中离不开对测试环境的操作.我们测试的软件,系统都是部署在linux系统环境上,我们掌握Linux系统的日常操作是非常必要的.那么在学习Linu ...
- [Noip2016]蚯蚓 (单调队列)
题干 本题中,我们将用符号[c]表示对c向下取整,例如:[3.0」= [3.1」=[3.9」=3.蛐蛐国最近蚯蚓成灾了!隔壁跳蚤国的跳蚤也拿蚯蚓们没办法,蛐蛐国王只好去请神刀手来帮他们消灭蚯蚓.蛐蛐国 ...
- POJ2362贪心
题意:我们的化学生物学家发明了一种新的叫stripies非常神奇的生命.如果一个质量为m1和m2的stripies相撞,生成的stripies体重是2*sqrt(m1*m2) 现在,科学家们想知道,如 ...