最近在进行和802.11漫游有关的工作,需要对wpa_supplicant认证流程和漫游过程有更多的了解,所以通过阅读论文等方式,记录整理漫游相关知识。Part1将记录802.11漫游的基本流程、802.11R的基本流程、与认证和漫游都有关的三层秘钥基础。Part1将包括普通漫游流程、三层秘钥原理 和802.11R漫游流程。Part2将包括wpa_supplicant有关部分解析,Part3将包括抓包分析。
本部分是分析wpa需要开始扫描之后如何将信息传递到内核——即如何调用相应的nl80211函数控制内核进而控制驱动开始关联。
比较绕的部分是start associate cb调用的函数是driver associate,然后是通过结构体调用的方式调用到nl80211的,具体的调用逻辑如下图所示,最终调用try connect,调用nl80211_drv_msg,发出nl80211开始关联命令到内核为止。