ENUM IEEE80211_FILTER_FLAGS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ NAME πŸ¦‹

enum ieee80211_filter_flags β€” hardware filter flags, bestie ✨ (this one's from the Kernel API Manual, section 9, iykyk)


🌸 SYNOPSIS 🌸

okay so here's the whole enum, and yes every single member matters, don't skip a single one πŸ’…

enum ieee80211_filter_flags {
    FIF_ALLMULTI ,
    FIF_FCSFAIL ,
    FIF_PLCPFAIL ,
    FIF_BCN_PRBRESP_PROMISC ,
    FIF_CONTROL ,
    FIF_OTHER_BSS ,
    FIF_PSPOLL ,
    FIF_PROBE_REQ ,
    FIF_MCAST_ACTION

};

πŸ’– Constants πŸ’–

  • FIF_ALLMULTI β€” pass all the multicast frames 🫢 this one gets used when the user asks for it, or when the hardware genuinely can't filter by multicast address (no cap, it happens).
  • FIF_FCSFAIL β€” pass frames with a failed FCS 😭 but heads up: you need to set the RX_FLAG_FAILED_FCS_CRC for them, otherwise it's giving nothing.
  • FIF_PLCPFAIL β€” pass frames with a failed PLCP CRC (but you need to set the RX_FLAG_FAILED_PLCP_CRC for them β€” yes, the original really does leave that paren hanging, iconic honestly πŸ’€).
  • FIF_BCN_PRBRESP_PROMISC β€” this flag gets set during scanning to tell the hardware "girl, don't filter beacons or probe responses by BSSID" πŸ“‘ filtering them can greatly reduce the amount of processing mac80211 needs to do and the amount of CPU wakeups, so you should honour this flag if possible. fr fr, honour it.
  • FIF_CONTROL β€” pass control frames addressed to this station (except for PS Poll, she's not invited πŸ’…).
  • FIF_OTHER_BSS β€” pass frames destined to other BSSes πŸ‘€
  • FIF_PSPOLL β€” pass PS Poll frames 🌸
  • FIF_PROBE_REQ β€” pass probe request frames ✨
  • FIF_MCAST_ACTION β€” pass multicast Action frames πŸŽ€

πŸŽ€ Description πŸŽ€

So these flags are literally the whole vibe check for what the filter in hardware should be programmed to let through, and what should not be passed to the stack. πŸ¦‹

Also it is always safe to pass more frames than requested β€” but that has negative impact on power consumption, so like… be mindful, bestie πŸ˜­πŸ”‹

🌈 SEE ALSO 🌈

Kernel file ./include/net/mac80211.h β€” and yes, the whole extended friend group is here, every single one of them, I'm not leaving anybody out πŸ‘‘:


πŸ‘‘ the little sign-off πŸ‘‘

Okay that's the whole page, bestie, you ate that 🫢 this one lives in ./include/net, dated October 2026, and it's filed under enum ieee80211_filter_flags(9) β€” periodt. πŸ’œβœ¨

πŸ“¦ where this page comes from