ieee80211_channel_equal(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ieee80211_channel_equal πŸ’…

okay so bestie, welcome to ieee80211_channel_equal β€” it lives in section 9 of the Kernel API Manual, which is the "kernel functions" section, so you already know this is driver-devel girlie territory 🧚. the whole page is literally just "are these two things the same channel," and honestly? she ate. let's get into it.


✨ NAME ✨

ieee80211_channel_equal β€” compare two struct ieee80211_channel, that's it, that's the whole job πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

bool ieee80211_channel_equal (struct ieee80211_channel *a , struct
ieee80211_channel *b );

so you call it like a normal function, you hand it two pointers, and it gives you back a bool. that's the vibe check. πŸ”₯


πŸŽ€ ARGUMENTS πŸŽ€

  • a β€” the 1st struct ieee80211_channel. she's the first one up, the main character of the comparison 🌸
  • b β€” the 2nd struct ieee80211_channel. she's the one getting compared to a, no pressure babe 🫢

⭐ RETURN ⭐

it returns true if the center frequency of a == the center frequency of b πŸ’€ that's the entire comparison. not the flags, not the band, not any of the other little fields hanging out in there β€” literally just the center frequency. lowkey obsessed with how simple that is ngl ✨

heads up: this is part 1, bestie β€” there's more coming, don't go anywhere πŸ’œ

✨ SEE ALSO ✨

okay so this section is literally the group chat of the whole cfg80211 universe 🫢 and the first thing you need to know is where everybody lives: Kernel file ./include/net/cfg80211.h. that's the mothership. everything below is a page you can actually pull up, and bestie we are not skipping a single one πŸ’….



  • Scanning and BSS list handling(9) β€” yup, another section, and it brought friends: struct cfg80211_ssid(9), struct cfg80211_scan_info(9), struct cfg80211_scan_6ghz_params(9), struct cfg80211_scan_request(9), struct cfg80211_match_set(9), struct cfg80211_sched_scan_plan(9), struct cfg80211_bss_select_adjust(9), struct cfg80211_sched_scan_request(9), enum cfg80211_signal_type(9), struct cfg80211_inform_bss(9), struct cfg80211_bss_ies(9), struct cfg80211_bss(9), ieee80211_bss_get_elem(9), ieee80211_bss_get_ie(9)
  • auth + assoc + connect era: struct cfg80211_auth_request(9), struct cfg80211_assoc_link(9), struct cfg80211_ml_reconf_req(9), enum cfg80211_assoc_req_flags(9), struct cfg80211_assoc_request(9), struct cfg80211_deauth_request(9), struct cfg80211_disassoc_request(9), struct cfg80211_ibss_params(9), struct cfg80211_bss_selection(9), struct cfg80211_connect_params(9), enum cfg80211_connect_params_changed(9), enum wiphy_params_flags(9), struct cfg80211_pmksa(9)
  • pmk / wowlan / coalesce / qos stack: struct cfg80211_pkt_pattern(9), struct cfg80211_wowlan_tcp(9), struct cfg80211_wowlan(9), struct cfg80211_coalesce_rules(9), struct cfg80211_coalesce(9), struct cfg80211_wowlan_nd_match(9), struct cfg80211_wowlan_nd_info(9), struct cfg80211_wowlan_wakeup(9), struct cfg80211_gtk_rekey_data(9), struct cfg80211_update_ft_ies_params(9), struct cfg80211_mgmt_tx_params(9), struct cfg80211_dscp_exception(9), struct cfg80211_dscp_range(9), struct cfg80211_qos_map(9)
  • Neighbor Awareness Networking (NAN)(9) β€” the NAN section itself, plus: struct cfg80211_nan_band_config(9), struct cfg80211_nan_conf(9), struct cfg80211_nan_channel(9), struct cfg80211_nan_local_sched(9), struct cfg80211_nan_peer_map(9), struct cfg80211_nan_peer_sched(9), enum cfg80211_nan_conf_changes(9), struct cfg80211_nan_func_filter(9), struct cfg80211_nan_func(9)
  • pmk conf + external auth + ftm/pmsr: struct cfg80211_pmk_conf(9), struct cfg80211_external_auth_params(9), struct cfg80211_ftm_responder_stats(9), struct cfg80211_pmsr_ftm_result(9), struct cfg80211_pmsr_result(9), struct cfg80211_pmsr_ftm_request_peer(9), struct cfg80211_pmsr_request_peer(9), struct cfg80211_pmsr_request(9), struct cfg80211_update_owe_info(9), struct mgmt_frame_regs(9)





anyway that's the whole crowd so far 🫢 go click through them, i'll wait πŸ’–

...and the deep-cut support squad keeps going, because the kernel networking docs do not know how to stop (affectionate):

okay that's the "stop the interface / check the combinations" chunk, and honestly the range of girlbossery here is unmatched πŸ’…

look at all these colour-change notifications living their best lives 🎨✨ (not a single one of them is doing the same job as our humble channel comparison, iykyk)

and that's the whole extended family right there β€” MLO reconf, NAN everything, the S1G frequency girlies, and the debugfs duo closing us out. 64 cross-references total, no cap. 🫢


okay bestie, that's the entire page, start to finish, and you absolutely ate it. πŸ’–

for the receipts: this one lives in the source tree under ./include/net, it's dated October 2026, and it's filed as the ieee80211_channel_equal(9) man page. go forth and compare those channels with main character energy βœ¨πŸ¦‹

πŸ“¦ where this page comes from