ieee80211_is_ctl(9)
π¦ NAME π¦
okay so bestie, welcome to the Kernel API Manual (section 9, very official π
) β this page is all about ieee80211_is_ctl, the little function that checks whether a frame type is IEEE80211_FTYPE_CTL.
That's it. That's the whole slay. One job, done iconically. β¨
πΈ SYNOPSIS πΈ
bool ieee80211_is_ctl (__le16 fc );
no cap, that's the entire signature. she's short, she's sweet, she returns a bool π«Ά
π ARGUMENTS π
fcβ the frame control bytes, and they're in little-endian byteorder (put some respect on the byteorder, it matters π).
β RETURN β
it tells you whether or not the frame type is control. yes/no, true/false, slay/not-slay. π
π₯ SEE ALSO π₯
first up, the literal source of truth: kernel file ./include/linux/ieee80211.h β go read her, she's iconic.
and now, the guest list (it's long, hydrate first π):
- the
has_*girlies:ieee80211_has_tods(9),ieee80211_has_fromds(9),ieee80211_has_a4(9),ieee80211_has_morefrags(9),ieee80211_has_retry(9),ieee80211_has_pm(9),ieee80211_has_moredata(9),ieee80211_has_protected(9),ieee80211_has_order(9) - frame-type besties:
ieee80211_is_mgmt(9),ieee80211_is_data(9),ieee80211_is_ext(9),ieee80211_is_data_qos(9),ieee80211_is_data_present(9) - the association / probe / beacon main characters:
ieee80211_is_assoc_req(9),ieee80211_is_assoc_resp(9),ieee80211_is_reassoc_req(9),ieee80211_is_reassoc_resp(9),ieee80211_is_assoc(9),ieee80211_is_probe_req(9),ieee80211_is_probe_resp(9),ieee80211_is_beacon(9),ieee80211_is_atim(9),ieee80211_is_disassoc(9),ieee80211_is_auth(9),ieee80211_is_deauth(9),ieee80211_is_action(9) - the control-adjacent crowd (iykyk):
ieee80211_is_back_req(9),ieee80211_is_back(9),ieee80211_is_pspoll(9),ieee80211_is_rts(9),ieee80211_is_cts(9),ieee80211_is_ack(9),ieee80211_is_cfend(9),ieee80211_is_cfendack(9) - nullfunc nation + frag squad:
ieee80211_is_nullfunc(9),ieee80211_is_qos_nullfunc(9),ieee80211_is_trigger(9),ieee80211_is_any_nullfunc(9),ieee80211_is_first_frag(9),ieee80211_is_frag(9) - struct/enum era (part one, the information elements):
struct ieee80211_quiet_ie(9),struct ieee80211_msrment_ie(9),struct ieee80211_channel_sw_ie(9),struct ieee80211_ext_chansw_ie(9),struct ieee80211_sec_chan_offs_ie(9),struct ieee80211_wide_bw_chansw_ie(9),struct ieee80211_tim_ie(9),struct ieee80211_tpc_report_ie(9),struct ieee80211_bss_load_elem(9),struct ieee80211_timeout_interval_ie(9),enum ieee80211_idle_options(9),struct ieee80211_bss_max_idle_period_ie(9),struct ieee80211_bssid_index(9),struct ieee80211_multiple_bssid_configuration(9) - the getters, absolute legends:
ieee80211_get_qos_ctl(9),ieee80211_get_tid(9),ieee80211_get_SA(9),ieee80211_get_DA(9) - robust management + privacy vibes:
ieee80211_is_bufferable_mmpdu(9),_ieee80211_is_robust_mgmt_frame(9),ieee80211_is_robust_mgmt_frame(9),ieee80211_is_public_action(9),ieee80211_is_protected_dual_of_public_action(9),_ieee80211_is_group_privacy_action(9),ieee80211_is_group_privacy_action(9) - timing/finishing touches:
ieee80211_tu_to_usec(9),ieee80211_get_tdls_action(9),ieee80211_action_contains_tpc(9),ieee80211_is_timing_measurement(9),ieee80211_is_ftm(9),for_each_element_completed(9),struct ieee80211_enh_crit_upd(9),ieee80211_check_tim(9)
literally every single one of those is a real page and a real friend of this one. don't skip the fine print bestie, it's giving syllabus week π
and that's the whole page!! mwah π this masterpiece was served to you from ./include/linux, stamped October 2026, and filed forever under ieee80211_is_ctl(9). go forth and check your frame types, queen πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms