ieee80211_get_qos_ctl(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– ieee80211_get_qos_ctl β€” get pointer to qos control bytes ✨

okay so bestie, welcome to the Kernel API Manual πŸŽ€ β€” yes that's the manual name, and yes it's giving "official but make it cute". This one's a lil function in ./include/linux/ieee80211.h land and it's honestly iconic once you know what it does πŸ¦‹


🌸 NAME 🌸

ieee80211_get_qos_ctl β€” get pointer to qos control bytes πŸ’…

Like, literally it hands you a pointer to the QoS control bytes. That's the whole job. Main character energy fr.


✨ SYNOPSIS ✨

u8 * ieee80211_get_qos_ctl (struct ieee80211_hdr *hdr );

πŸŽ€ ARGUMENTS πŸŽ€

  • hdr β€” the frame πŸ‘‘ like, the actual 802.11 frame you're poking at, bestie.

🌈 RETURN 🌈

a pointer to the QoS control field in the frame header πŸ’– (yes, u8 *, no cap)


πŸ¦‹ DESCRIPTION πŸ¦‹

so here's the vibe check 🧚 the qos ctrl bytes come after the frame_control, duration, seq_num and 3 or 4 addresses of length ETH_ALEN. Like, they're not at the front, they're chilling behind all that.

The way it knows which layout to use? It checks frame_control to choose between struct ieee80211_qos_hdr_4addr and struct ieee80211_qos_hdr 🫢 so like 4 addresses = 4addr struct, otherwise the normal one. Choices choices πŸ’…


⭐ SEE ALSO ⭐

Kernel file ./include/linux/ieee80211.h β€” that's the one, that's the home base 🏠

And now the extended universe, because there are so many of these bestie, buckle up:


okay that's the page!! πŸ’œ this lil guy came from ./include/linux and it's dated October 2026 β€” write that down bestie, iykyk πŸ“ byeee, go get those qos control bytes, slay πŸ’…βœ¨πŸ”₯

πŸ“¦ where this page comes from