cfg80211_ba...nd_cac_abort(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ cfg80211_background_cac_abort(9) ✨

okay bestie, welcome to the Kernel API Manual β€” yes this page is literally titled cfg80211_ba...nd_cac_abort(9) because the name is so long it had to get cut off, and honestly? iconic of it. this is part 1 of a three-parter so don't go anywhere, we're just getting started 🫢


πŸŽ€ NAME πŸŽ€

cfg80211_background_cac_abort β€” Channel Availability Check offchan abort event, no cap πŸ’…


🌸 SYNOPSIS 🌸

void cfg80211_background_cac_abort (struct wiphy *wiphy );

that's it. that's the whole signature. one void, one function name, one pointer. she's minimal, she's clean, she ate πŸ”₯


πŸ¦‹ ARGUMENTS πŸ¦‹

  • wiphy β€” the wiphy. that's literally the whole description in the original and ngl we're keeping that energy. it's the wiphy. the wireless physical device thing. you know the one πŸ’–

πŸ‘‘ DESCRIPTION πŸ‘‘

so here's the vibe: this function gets called by the driver when a Channel Availability Check (CAC) gets aborted by a offchannel dedicated chain. that's the whole story, periodt.

  • the caller is the driver, not you, not your app, the driver
  • what's being aborted is a Channel Availability Check (CAC)
  • the thing doing the aborting is an offchannel dedicated chain

if that's your situation, congrats, this is your function. slay 🌈


okay that's the plot so far β€” part 2 is coming right up, don't touch that dial 🧚

πŸ”— SEE ALSO πŸ”—

okay so this is the part where the page goes full fangirl and shouts out literally every doc it's besties with πŸ’… and bestie, the friend group is HUGE. Like, this is not a "see also, three links" situation, this is a whole extended family reunion. We're talking the kernel header itself, every struct, every enum, every helper function, every subsystem page. All of them. No cap. So grab a snack, we're going through the whole contact list 🫢

The origin story first β€” everything here lives in the kernel file <pink>./include/net/cfg80211.h</pink>:

  • 🌱 where it all starts: ./include/net/cfg80211.h, Introduction(9), Device registration(9)

Then the band-and-capability girlies, aka every "what can this radio even do" struct:


Next up: the Actions and configuration era, lowkey the main character section of this whole header πŸŽ€


🌸 Scanning and BSS list handling β€” the "who's out there" section, truly the nosiest part of the header (affectionate)

  • πŸ” scan structs: Scanning and BSS list handling(9), 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, deauth, disassoc, connect: 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)
  • 😴 wowlan / coalesce / wakeup (the sleepover crew): 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) β€” yes it gets its own shoutout, it's iconic like that

  • πŸ‘‘ the NAN collection: Neighbor Awareness Networking (NAN)(9), 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, external auth, FTM, PMSR, OWE: 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)

⭐ and now the big wiphy section, aka the whole personality of your wireless device ✨


πŸ’… Utility functions β€” the little helpers that do the chores so you don't have to

πŸ”₯ Data path helpers β€” packet conversion hours, fr fr


🌍 Regulatory enforcement infrastructure + the internal regdb stuff, because the government wants to know your channel plans 🫢

and then the notification / BSS-reporting crowd πŸ‘‘


πŸ“Ά RFkill integration, Vendor commands and Test mode β€” three whole sections, we're not skipping a single one bestie πŸ’€

and finally the grand finale β€” every rx/tx and notification function in the house, last but never least πŸ”₯

that's genuinely every single one of them, bestie β€” not a single link left behind πŸ’– and the page isn't done with us yet, so stay tuned πŸ‘€

…and here's the rest of the squad, bestie β€” the whole SEE ALSO lineup, no skips, no "etc." cop-outs πŸ’…


Okay bestie, that's genuinely the whole list β€” every single one, not a crumb left behind 🫢

And for the credits section, this page is sourced from ./include/net (that's where it lives, periodt) and it's tagged October 2026 β€” so yes, she's from the future, we don't question it πŸ’…βœ¨ Go read some kernel code, ily, bye πŸŽ€

πŸ“¦ where this page comes from