移植一個wifi驅動的程序中,發現pc端只能短暫搜索到AP熱點,懷疑只發送了一次beacon信標,想追蹤下,不知道內核中那塊代碼負責這塊功能。
應用層移植了hostapd3.5,libnl,libssl.
uj5u.com熱心網友回復:
內核中管理wifi連接的部分是cfg80211,hostapd里面的src/driver/nl80211就是和cfg80211對接的,走的是netlink,libnl就是負責管理netlink通訊的user space library。uj5u.com熱心網友回復:
回去又想了一下你的問題, beacon周期是在struct cfg80211_ap_settings里面有一個beacon_interval函式。基本上,hostapd再發set_ap的時候應該會告訴內核beacon_interval的數值是多少。內核會在.start_ap callback里把struct cfg80211_ap_settings交給wifi驅動。之后就應該是硬體和驅動之間看誰負責定期發送beacon了。我看大部分驅動都應該是把beacon ie交給硬體然后由硬體自己處理吧。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/26100.html
標籤:內核源代碼研究區
上一篇:求幫助!!!
