Skip to content

Add support for mac80211_hwsim Generic Netlink family#311

Open
a-gavin wants to merge 2 commits intojbaublitz:mainfrom
a-gavin:mac80211_hwsim
Open

Add support for mac80211_hwsim Generic Netlink family#311
a-gavin wants to merge 2 commits intojbaublitz:mainfrom
a-gavin:mac80211_hwsim

Conversation

@a-gavin
Copy link
Contributor

@a-gavin a-gavin commented Nov 27, 2025

As mentioned in the commit message (copied below), these constants and docstring comments come direclty from the driver which is not importable from userspace, unlike other Netlink families. See here for reference.

This driver is not loaded by default, but can be loaded by running modprobe mac80211_hwsim on supporting kernels with root permissions.

As discussed here there is an issue is present for this attribute where the value is actually a u8 but cannot be defined as such currently given explicit requirement for u16 Netlink attributes in this crate. However, once that is sorted, I'd be happy to address the issue.

Add support for Linux 'mac80211_hwsim' virtual WiFi driver
https://www.kernel.org/doc/html/next/networking/mac80211_hwsim/mac80211_hwsim.html

Unlike other netlink constants (e.g. 'nl80211'), these constants
are presently only available in the 'mac80211_hwsim' kernel driver
(specifically in 'mac80211_hwsim.h').

Somewhat confusingly, this header file includes both netlink API
constants and structs in addition to those which are driver-internal
only. To the best of my knowledge, the constants added in this commit
constitute all of the netlink API.

Add support for Linux 'mac80211_hwsim' virtual WiFi driver
https://www.kernel.org/doc/html/next/networking/mac80211_hwsim/mac80211_hwsim.html

Unlike other netlink constants (e.g. 'nl80211'), these constants
are presently only available in the 'mac80211_hwsim' kernel driver
(specifically in 'mac80211_hwsim.h').

Somewhat confusingly, this header file includes both netlink API
constants and structs in addition to those which are driver-internal
only. To the best of my knowledge, the constants added in this commit
constitute all of the netlink API.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant