[RK3288][Android6.0] WiFi之wpa_supplicant服务启动
来源:互联网 发布:淘宝去年双十一交易额 编辑:程序博客网 时间:2024/04/28 00:21
Platform: Rockchip
OS: Android 6.0
Kernel: 3.10.92
框架:
Android使用wpa_supplicant(开源软件项目,简称WPAS)服务对无线网络进行控制和管理,框架如下(摘自网络)
- Client调用方式指的是通过wpa_cli客户端的方式调用。也就是说wpa_cli和wpa_supplicant是C/S架构的关系,而
Framework层也是C/S的方式通过socket与WPAS通信。 - WPAS作为framework和driver的中继,也就是framework -> wpa_supplicant -> driver, driver -> wpa_supplicant -> framework, 不过其实wpa_supplicant与driver中间还有一层叫cfg80211,这里当是Kernel driver框架的一部分吧。
启动:
hardware/libhardware_legacy/wifi/wifi.c
int wifi_start_supplicant(int p2p_supported){ //static const char SUPPLICANT_NAME[] = "wpa_supplicant"; strcpy(supplicant_name, SUPPLICANT_NAME); property_set("ctl.start", supplicant_name);}
启动wpa_supplicant服务,对应的配置在device/rockchip/common/init.connectivity.rc
########## kernel version >= 3.10.x ##########service wpa_supplicant /system/bin/wpa_supplicant \ -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ -I/system/etc/wifi/wpa_supplicant_overlay.conf \ -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0 class main socket wpa_wlan0 dgram 660 wifi wifi disabled oneshot
-iwlan0:对应的interface
-Dnl80211: 使用的驱动
-c/data/misc/wifi/wpa_supplicant.conf: 配置文件,前面文章有提过此文件的由来
-g@android:wpa_wlan0: 控制接口,后面会看到socket的连接对应的名字会用到它
socket wpa_wlan0 dgram 660 wifi wifi: 创建一个socket文件,名字是wpa_wlan0, framwork和WPAD的通信就靠它来建立。注意只有当服务运行起来后会创建。
阅读全文
1 0
- [RK3288][Android6.0] WiFi之wpa_supplicant服务启动
- [RK3288][Android6.0] WiFi之wpa_supplicant的socket(服务端)
- [RK3288][Android6.0] WiFi之wpa_supplicant初始化过程
- [RK3288][Android6.0] WiFi之wpa_supplicant扫描过程
- [RK3288][Android6.0] WiFi之wpa_supplicant与内核通信的socket
- [RK3288][Android6.0] WiFi的配置文件wpa_supplicant.conf
- [RK3288][Android6.0] WiFi之WifiWatchdogStateMachine
- [RK3288][Android6.0] WiFi之Framework的socket(客户端)
- [RK3288][Android6.0] WiFi之Framework扫描过程
- [RK3288][Android6.0] WiFi之Framework连接过程小结
- [RK3288][Android6.0] WiFi之开机自动连接过程
- [RK3288][Android6.0] WiFi之Passpoint功能了解
- [RK3288][Android6.0] WiFi之无线网络配置的保存过程
- [RK3288][Android6.0] WiFi之PNO功能了解
- [RK3288][Android6.0] WiFi之priority计算及使用
- [RK3288][Android6.0] WiFi之从Linkspeed看获取流程
- [RK3288][Android6.0] WiFi之DHCP获取IP address流程
- [RK3288][Android6.0] WiFi之无线网络配置的断开过程
- js 必包和面向对象设计
- 递归分类
- 怎么样在WEB上实现office在线编辑的功能
- LeetCode-algorithms 523. Continuous Subarray Sum
- 用高德地图API 通过详细地址获得经纬度
- [RK3288][Android6.0] WiFi之wpa_supplicant服务启动
- Oracle--存储过程
- Intellij Idea快捷键整理
- Oracle IS NULL
- js监听输入框的文本变化事件
- SpringAOP的实现
- easyui datagrid 的一些用法以及一些js的用法备忘
- 74衍生系列芯片型号简介
- char* char[]及string的区别及相互转换