#
bcb089f6 |
| 09-Jun-2022 |
Augustin Cavalier <waddlesplash@gmail.com> |
openbsd_wlan (and FreeBSD ieee80211_ioctl.h): Initial ioctl compatibility.
* Introduce IEEE80211_IOCTLS_ABBREVIATED to FreeBSD's ieee80211_ioctl.h, so that the FreeBSD header can be included alo
openbsd_wlan (and FreeBSD ieee80211_ioctl.h): Initial ioctl compatibility.
* Introduce IEEE80211_IOCTLS_ABBREVIATED to FreeBSD's ieee80211_ioctl.h, so that the FreeBSD header can be included along with the OpenBSD net80211 stack without triggering lots of errors, so we can use these structs in openbsd_wlan ieee80211_haiku.cpp.
* Implement basic ieee80211req handling machinery. We aren't going to handle anything but SIOCG80211 and SIOCS80211 in this method, so we can simplify it a bit at the same time.
* Implement IEEE80211_IOC_SCAN_RESULTS to return scan results from the OpenBSD WiFi stack in FreeBSD ioctl format.
This change adds two minor "features" (noted with #ifdefs) to the OpenBSD net80211 stack: one to specify what node index to return when returning known nodes (scan results), as this way we do not have to allocate a huge buffer to store the scan results in before sending them back to userland, but can instead get and convert a single one at a time.
(We store the converted values in kernel mode all at once, though, so this is not as efficient as it could be. More improvement possible.)
* Implement IEEE80211_IOC_BSSID and IEEE80211_IOC_SSID while we are at it. This actually may make joining open networks possible, but I didn't really test it. (They are used with SIOCG80211 to see what network the device is currently connecting/connected to.)
show more ...
|