Complete

En-Wei Wu, a 2022 Google Summer of Code Contributor, began an internship with the FreeBSD Foundation in early 2023 to work on FreeBSD wireless drivers and tools. The work is divided into three components.

wtap(4) is a net80211(4) Wi-Fi simulator introduced by Monthadar Al Jaberi <monthadar@gmail.com> and Adrian Chadd <adrian@FreeBSD.org> in 2012.  En-Wei will extend wtap by adding support for more 802.11 physical layers beyond 802.11b. Other work on wtap will be to add WPA/WPA2/WPA3 support, so that testing wpa supplicant(8) and hostapd(8) will be possible.

Support for WPA2 preauthentication will be added to hostapd(8). WPA2 is the authentication protocol defined as part of the IEEE 802.11i specification. This protocol is now commonly used to authenticate wireless stations to access points. Part of this protocol is the ability to pre-authenticate a station with one or more access points so that roaming can happen quickly. FreeBSD lacks support for this aspect of the protocol in the hostapd program used to construct a WPA-enabled access point. This task would port the Linux code that exists to support pre-authentication in hostapd. This mostly involves rewriting some user-mode multicast code and testing the result. Modifications to third-party sources hosted outside of FreeBSD should be upstreamed to the appropriate project when applicable.

Work on 802.11 drivers will be completed. The ath10k will be ported by completing work Adrian Chadd began on the driver. Also, assistance will be provided to Bjoern Zeeb by helping develop and test Realtek drivers such as rtw88 and rtw89.