🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
本章对wpa_supplicant进行了一番剖析,涉及如下几个重点内容: * WPAS的启动:在这条分析路线中,读者能感受到WPAS中多种多样的数据结构以及之间较为复杂的关系。同时,我们对那些极具背景含义的成员变量也进行了深入介绍。 * EAPOL/EAP模块:这一节中,我们先向读者介绍了理论知识,然后结合代码分析了WPAS如何将理论知识转化成代码。从笔者角度来看,状态机的代码比看状态切换图要复杂得多。读者不妨自己亲身体验一下。 * 扫描、关联及4-Way Handshake分析:我们通过一个实例讲解了这一流程涉及的重要函数和相关知识点。该流程实际上包含的代码远比书中给出来的多,原因是WPAS支持的许多其他功能(如WPS、P2P、802.11R、802.11W等)都在这一流程中有涉及。根据笔者自己的学习经验,只有先搞清楚一个最简单的流程,后面才能循序渐进地把其他功能的分析加进来。 >[info] 提示:本章编撰时,市面上搭载Android 4.2的手机较少。所以此处的分析目标是Android 4.1中的wpa_supplicant。不过笔者比较了它和Android 4.2中的wpa_supplicant。虽然4.2中的WPAS变化较大,但主要体现在一些新增功能和Bug修改上。读者如果搞清楚了本章所介绍的内容,再转去研究4.2中的WPAS所需要的学习成本不会太大。