cfg80211_nan...c_terminated(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… cfg80211_nan_func_terminated(9) β€” kernel API manual, but make it make sense

okay so this is cfg80211_nan_func_terminated, straight out of the kernel API manual, and bestie it is exactly what it sounds like: it's the little messenger that goes "hey, that NAN function? yeah, it's done. terminated. gone. πŸ’€" No cap.


✨ NAME ✨

cfg80211_nan_func_terminated β€” notify about NAN function termination. that's the whole job. it reports the ending. the finale. the last episode. 🎬


πŸ¦‹ SYNOPSIS πŸ¦‹

void cfg80211_nan_func_terminated (struct wireless_dev *wdev , u8
       inst_id , enum nl80211_nan_func_term_reason reason , u64 cookie , gfp_t
       gfp );

it returns void, meaning it hands you nothing back β€” it's giving generous, it's giving "the reward is the friends we made along the way". 🫢


πŸŽ€ ARGUMENTS πŸŽ€

  • wdev β€” the wireless device reporting the match. yeah, this is the one spilling the tea. πŸ“’
  • inst_id β€” the local instance id. it's the u8 lil' name tag so everyone knows which instance we're talking about.
  • reason β€” termination reason, and it's gotta be one of the NL80211_NAN_FUNC_TERM_REASON_* values. no homemade reasons, no vibes-based reasons, only the canon list. πŸ‘‘
  • reason... jk not twice β€” cookie β€” unique NAN function identifier. it's literally the function's main character ID. πŸͺ
  • gfp β€” allocation flags. the classic gfp_t moment, because the kernel always needs to know how you want your memory served. 🌸

πŸ’œ DESCRIPTION πŸ’œ

so what does it actually do? simple, iconique: this function reports that a NAN function is terminated. that's it. that's the whole plot. it's the "we need to talk" text but for a NAN function's lifecycle. ✨

lowkey important: it's a report. it's announcing the termination, not doing the dramatic breaking-up for you. don't come for me, that's literally what the page says. πŸ™ˆ

more parts coming, don't go anywhere bestie 🌈

πŸ‘€ SEE ALSO πŸ‘€

okay bestie, this is the part where the page just... lists everything. and i mean everything. it's giving "the author found every single symbol in the header and went 'yes, all of them'". no cap, it's a whole vibe. here's the complete list, in the exact order it's given, nothing cut 🫢

  • the kernel file itself: ./include/net/cfg80211.h β€” and Introduction(9) to hold your hand through it

🌸 the header intro & the band/capability era πŸ¦‹

lowercase _ieee80211_set_sband_iftype_data(9) sitting right next to the regular one β€” that's the internal twin, bestie. they really said "you get both versions" πŸ’…

✨ Actions and configuration β€” the whole saga πŸŽ€


πŸ¦‹ Scanning and BSS list handling πŸ”₯

  • 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)
  • 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)
  • 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) β€” our main character ✨

  • 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)

okay that's the NAN section and yes it's literally the icon of this whole page πŸŽ€ keep going, there's more πŸ‘‡


🌈 more structs: auth, PMK, 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)
  • struct cfg80211_ops(9)
  • enum wiphy_flags(9)
  • struct ieee80211_iface_limit(9)
  • struct ieee80211_iface_combination(9)
  • enum wiphy_wowlan_support_flags(9)
  • struct wiphy_wowlan_support(9)
  • struct wiphy_coalesce_support(9)
  • enum wiphy_vendor_command_flags(9)
  • enum wiphy_opmode_flag(9)
  • struct sta_opmode_info(9)
  • struct wiphy_vendor_command(9)
  • struct wiphy_iftype_ext_capab(9)
  • cfg80211_get_iftype_ext_capa(9)
  • struct cfg80211_pmsr_capabilities(9)
  • struct wiphy_iftype_akm_suites(9)
  • struct wiphy_radio_cfg(9)
  • struct wiphy_radio_freq_range(9)
  • struct wiphy_radio(9)
  • enum wiphy_nan_flags(9)
  • struct wiphy_nan_capa(9)

πŸ’… the wiphy life cycle era 🫢

look at all those wiphy_*_work_* and wiphy_hrtimer_work_* pairs β€” queue, cancel, flush, pending, four times over. they really said "consistency is free, do it for everything" πŸ˜­πŸ’€


🧚 Utility functions πŸ“

⭐ Data path helpers πŸ’œ


🌸 Regulatory enforcement infrastructure πŸ‘‘

note the difference between regulatory_set_wiphy_regd(9) and regulatory_set_wiphy_regd_sync(9) β€” one's got the _sync glow-up, iykyk πŸ’…

πŸ”₯ scan/BSS notifications, MLME & friends 🌈

the __-prefixed __cfg80211_get_bss(9) is the lowkey twin of cfg80211_get_bss(9), it's giving internal-helper energy πŸ™ˆ


πŸŽ€ RFkill integration, Vendor commands, Test mode πŸŽ€


πŸ’€ connect / roam / disconnect notifications 😭


🌟 rx/tx mgmt, control port, CQM, radar etc. πŸ¦‹

aaaaand that's the entire SEE ALSO list, every single one, nothing skipped πŸ’– and yeah the page keeps going after this so don't you dare close the tab yet, bestie πŸ‘€πŸ’…

...and the rest of the extended fam, bestie β€” the whole group chat is here, no one got left on read πŸ’…


That's the whole roster β€” 63 cross-refs, not one dropped, because we don't do incomplete lists in this house πŸ’–

And that's a wrap on the whole page, bestie πŸŽ€ This iteration came straight out of ./include/net, dated October 2026 β€” so go forth, register your netdevices, free your NAN funcs, and stay slay βœ¨πŸ‘‘

πŸ“¦ where this page comes from