本文转载自:http://blog.csdn.net/gabbzang/article/details/10584587

一、wpa_supplicant是什么?

      wpa_supplicant本是开源项目源码,被谷歌修改后加入Android移动平台,它主要是用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上的工作内容是通过socket(不管是wpa_supplicant与上层还是wpa_supplicant与驱动都采用socket通讯)与驱动交互上报数据给用户,而用户可以通过socket发送命令给wpa_supplicant调动驱动来对WiFi芯片操作。 简单的说,wpa_supplicant就是WiFi驱动和用户的中转站外加对协议和加密认证的支持。

     Android WiFi系统架构如下图所示:

            wpa_supplicant 进程实现的入口函数为:external/wpa_supplicant_8/wpa_supplicant/main.c中的main函数, 此程序在hardware/libhardware_legacy/wifi/wifi.c中的wifi_start_supplicant_common中被启动(property_set("ctl.start", daemon_cmd))。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐