cfg80211_connect_done(9)
π cfg80211_connect_done β the Kernel API Manual tea π
okay so bestie, buckle up, we're in cfg80211_connect_done(9) territory β this is the kernel API manual's page on it, and it's lowkey iconic β¨
πΈ NAME πΈ
cfg80211_connect_done β notify cfg80211 of connection result π
Like, that's literally her whole job: she tells cfg80211 how the connection went. no cap.
β¨ SYNOPSIS β¨
void cfg80211_connect_done (struct net_device *dev , struct
cfg80211_connect_resp_params *params , gfp_t gfp );
she takes three things and returns void β meaning she doesn't hand you anything back, she just does the thing and dips π«Ά
π¦ ARGUMENTS π¦
devβ the network device π» like, the actual netdev we're talking about hereparamsβ the connection response parameters π¦ the whole little bundle of "here's what happened when we tried to connect"gfpβ the allocation flags π± yes, the classicgfp_tflags, you know her, you love her
π DESCRIPTION π
okay so the vibe is: the underlying driver should call this once execution of the connection request from connect has been completed. that's it. that's the moment. the connection request started, it ran, it finished β and now you ring her up πβ¨
this one is similar to cfg80211_connect_bss, but β and this is the glow-up β she takes a structure pointer for the connection response parameters. so instead of passing a million args, you hand her a struct cfg80211_connect_resp_params * and she's like "slay, got it" π
β οΈ okay this part is important bestie, don't skip it: only one of these functions should be called: -cfg80211_connect_bss-cfg80211_connect_result-cfg80211_connect_timeout-cfg80211_connect_doneliterally one. pick one. choose your fighter. calling more than one is not giving what you think it's giving π
and that's chapter one, there's more coming so don't go anywhere π§
π the header-file homies (bands, caps & rates)
okay so literally every single one of these lives in the kernel file ./include/net/cfg80211.h β that's the sacred text, the mothership, the whole extended universe π« and this section is just the manpage handing you the entire cast list. Buckle up bestie, because we are going through ALL of them, no skips, no cap.
Introduction(9)β the intro chapter. start here if you're new, bestie π«ΆDevice registration(9)β the device registration chapter.enum ieee80211_channel_flags(9),struct ieee80211_channel(9)β channel flags plus the channel struct itself β¨enum ieee80211_rate_flags(9),enum ieee80211_bss_type(9),enum ieee80211_privacy(9),struct ieee80211_rate(9)β rate flags, BSS type, privacy, and the rate struct.struct ieee80211_he_obss_pd(9),struct cfg80211_he_bss_color(9)β HE OBSS PD and the HE BSS colour struct π¨struct ieee80211_sta_ht_cap(9),struct ieee80211_sta_vht_cap(9),struct ieee80211_sta_he_cap(9)β the HT / VHT / HE capability structs, the glow-up trilogy.struct ieee80211_eht_mcs_nss_supp(9),struct ieee80211_sta_eht_cap(9),struct ieee80211_sta_uhr_cap(9)β EHT MCS/NSS support, EHT cap, UHR cap. yes we're still going π₯struct ieee80211_sband_iftype_data(9),enum ieee80211_edmg_bw_config(9),struct ieee80211_edmg(9)β sband iftype data, EDMG bandwidth config, EDMG struct.struct ieee80211_sta_s1g_cap(9),struct ieee80211_supported_band(9)β S1G cap and the supported band struct._ieee80211_set_sband_iftype_data(9),ieee80211_set_sband_iftype_data(9)β the same setter twice, once with the lil underscore. twins πfor_each_sband_iftype_data(9),ieee80211_get_sband_iftype_data(9)β the for-each loop and the matching getter.ieee80211_get_he_iftype_cap(9),ieee80211_get_he_6ghz_capa(9),ieee80211_get_eht_iftype_cap(9),ieee80211_get_uhr_iftype_cap(9)β HE iftype cap, HE 6GHz capa, EHT iftype cap, UHR iftype cap. getter girlies unite π§wiphy_read_of_freq_limits(9)β reads the frequency limits.
π Actions and configuration crew
Actions and configuration(9)β the chapter, the main character, the moment πstruct vif_params(9),struct key_params(9)β vif params and key params.struct cfg80211_chan_def(9),struct cfg80211_tid_cfg(9),struct cfg80211_tid_config(9)β channel definition, TID config, and the other TID config.struct cfg80211_fils_aad(9),struct cfg80211_set_hw_timestamp(9)β FILS AAD and hw timestamp setting.cfg80211_get_chandef_type(9),cfg80211_chandef_create(9)β get the chandef type, create a chandef.cfg80211_chandef_identical(9),cfg80211_chandef_is_edmg(9),cfg80211_chandef_is_s1g(9),cfg80211_chandef_compatible(9)β is it identical, is it EDMG, is it S1G, is it compatible. the chandef vibe check squad πnl80211_chan_width_to_mhz(9),cfg80211_chandef_get_width(9)β channel width to MHz, and grab the width.cfg80211_chandef_valid(9),cfg80211_chandef_usable(9)β valid? usable? both, separately, bestie.cfg80211_chandef_dfs_required(9),cfg80211_chandef_dfs_usable(9),cfg80211_chandef_dfs_cac_time(9)β DFS required, DFS usable, DFS CAC time.cfg80211_chandef_primary(9),cfg80211_chandef_npca_valid(9),cfg80211_chandef_add_npca(9),cfg80211_chandef_add_dbe(9)β primary channel, NPCA validity, add NPCA, add DBE.nl80211_send_chandef(9),ieee80211_chandef_max_power(9),cfg80211_chandef_s1g_pri_width(9)β send the chandef, max power, S1G primary width.cfg80211_any_usable_channels(9),enum survey_info_flags(9),struct survey_info(9)β any usable channels, survey flags, survey info.struct cfg80211_crypto_settings(9),struct cfg80211_mbssid_config(9),struct cfg80211_mbssid_elems(9)β crypto settings, M-BSSID config, M-BSSID elements.struct cfg80211_rnr_elems(9),struct cfg80211_beacon_data(9),struct cfg80211_acl_data(9)β RNR elements, beacon data, ACL data.struct cfg80211_fils_discovery(9),struct cfg80211_unsol_bcast_probe_resp(9),struct cfg80211_s1g_short_beacon(9)β FILS discovery, unsolicited broadcast probe response, S1G short beacon.struct cfg80211_ap_settings(9),struct cfg80211_ap_update(9),struct cfg80211_csa_settings(9),struct cfg80211_color_change_settings(9)β AP settings, AP update, CSA settings, colour change settings. the AP admin clique β¨struct iface_combination_params(9),enum station_parameters_apply_mask(9),struct sta_txpwr(9)β iface combination params, station parameters apply mask, station tx power.struct link_station_parameters(9),struct link_station_del_parameters(9),struct cfg80211_ttlm_params(9)β link station params, link station delete params, TTLM params.struct station_parameters(9),struct station_del_parameters(9),enum cfg80211_station_type(9)β station params, station delete params, station type enum.cfg80211_check_station_change(9),enum rate_info_flags(9),enum rate_info_bw(9),struct rate_info(9)β check station change, rate info flags, rate info bandwidth, rate info.enum bss_param_flags(9),struct sta_bss_parameters(9)β BSS param flags and station BSS parameters.struct cfg80211_txq_stats(9),struct cfg80211_tid_stats(9)β txq stats and TID stats, the stats besties πstruct link_station_info(9),struct station_info(9)β link station info and station info.struct cfg80211_sar_sub_specs(9),struct cfg80211_sar_specs(9),struct cfg80211_sar_freq_ranges(9),struct cfg80211_sar_capa(9)β SAR sub specs, SAR specs, SAR freq ranges, SAR capabilities.cfg80211_get_station(9),enum monitor_flags(9),enum mpath_info_flags(9),struct mpath_info(9)β get station, monitor flags, mpath info flags, mpath info.enum wiphy_bss_param_flags(9),struct bss_parameters(9)β wiphy BSS param flags and BSS parameters.struct mesh_config(9),struct mesh_setup(9),struct ocb_setup(9)β mesh config, mesh setup, OCB setup πΈοΈstruct ieee80211_txq_params(9)β the txq params, last one in this lil cluster.
π Scanning and BSS list handling squad
Scanning and BSS list handling(9)β the chapter where the scanning lore lives.struct cfg80211_ssid(9),struct cfg80211_scan_info(9),struct cfg80211_scan_6ghz_params(9)β SSID, scan info, 6GHz scan params.struct cfg80211_scan_request(9),struct cfg80211_match_set(9),struct cfg80211_sched_scan_plan(9)β scan request, match set, sched scan plan.struct cfg80211_bss_select_adjust(9),struct cfg80211_sched_scan_request(9),enum cfg80211_signal_type(9)β BSS select adjust, sched scan request, signal type.struct cfg80211_inform_bss(9),struct cfg80211_bss_ies(9),struct cfg80211_bss(9)β inform BSS, BSS IEs, BSS. the BSS trio π¦ieee80211_bss_get_elem(9),ieee80211_bss_get_ie(9)β get an element / get an IE from a BSS.struct cfg80211_auth_request(9),struct cfg80211_assoc_link(9),struct cfg80211_ml_reconf_req(9)β auth request, assoc link, ML reconf request.enum cfg80211_assoc_req_flags(9),struct cfg80211_assoc_request(9)β assoc request flags and the assoc request itself.struct cfg80211_deauth_request(9),struct cfg80211_disassoc_request(9)β deauth request, disassoc request. bye bestie πstruct cfg80211_ibss_params(9),struct cfg80211_bss_selection(9),struct cfg80211_connect_params(9)β IBSS params, BSS selection, connect params. connect params is literally the star of this whole page, hi πenum cfg80211_connect_params_changed(9),enum wiphy_params_flags(9),struct cfg80211_pmksa(9)β connect params changed, wiphy params flags, PMKSA.struct cfg80211_pkt_pattern(9),struct cfg80211_wowlan_tcp(9),struct cfg80211_wowlan(9)β packet pattern, WoWLAN TCP, WoWLAN π΄struct cfg80211_coalesce_rules(9),struct cfg80211_coalesce(9)β coalesce rules, coalesce.struct cfg80211_wowlan_nd_match(9),struct cfg80211_wowlan_nd_info(9),struct cfg80211_wowlan_wakeup(9)β WoWLAN net-detect match, net-detect info, wakeup.struct cfg80211_gtk_rekey_data(9),struct cfg80211_update_ft_ies_params(9)β GTK rekey data, update FT IEs params.struct cfg80211_mgmt_tx_params(9),struct cfg80211_dscp_exception(9),struct cfg80211_dscp_range(9),struct cfg80211_qos_map(9)β mgmt tx params, DSCP exception, DSCP range, QoS map.
πΈ NAN girlies, PMKSA-adjacent besties & FTM
Neighbor Awareness Networking (NAN)(9)β the whole NAN chapter, our social butterfly π¦struct cfg80211_nan_band_config(9),struct cfg80211_nan_conf(9),struct cfg80211_nan_channel(9)β NAN band config, NAN conf, NAN channel.struct cfg80211_nan_local_sched(9),struct cfg80211_nan_peer_map(9),struct cfg80211_nan_peer_sched(9)β NAN local sched, peer map, peer sched.enum cfg80211_nan_conf_changes(9),struct cfg80211_nan_func_filter(9),struct cfg80211_nan_func(9)β NAN conf changes, func filter, func.struct cfg80211_pmk_conf(9),struct cfg80211_external_auth_params(9)β PMK conf, external auth params.struct cfg80211_ftm_responder_stats(9),struct cfg80211_pmsr_ftm_result(9),struct cfg80211_pmsr_result(9)β FTM responder stats, PMSR FTM result, PMSR result.struct cfg80211_pmsr_ftm_request_peer(9),struct cfg80211_pmsr_request_peer(9),struct cfg80211_pmsr_request(9)β the FTM request peer, request peer, and request.struct cfg80211_update_owe_info(9)β update OWE info, last of this group π«Ά
π wiphy, ops & device registration royalty
struct mgmt_frame_regs(9),struct cfg80211_ops(9)β mgmt frame regs and the ops struct, the blueprint of everything.enum wiphy_flags(9),struct ieee80211_iface_limit(9),struct ieee80211_iface_combination(9)β wiphy flags, iface limit, iface combination.enum wiphy_wowlan_support_flags(9),struct wiphy_wowlan_support(9),struct wiphy_coalesce_support(9)β WoWLAN support flags, WoWLAN support, coalesce support.enum wiphy_vendor_command_flags(9),enum wiphy_opmode_flag(9),struct sta_opmode_info(9)β vendor command flags, opmode flag, station opmode info.struct wiphy_vendor_command(9),struct wiphy_iftype_ext_capab(9),cfg80211_get_iftype_ext_capa(9)β vendor command, iftype ext capab, get iftype ext capa.struct cfg80211_pmsr_capabilities(9),struct wiphy_iftype_akm_suites(9)β PMSR capabilities, iftype AKM suites.struct wiphy_radio_cfg(9),struct wiphy_radio_freq_range(9),struct wiphy_radio(9)β radio cfg, radio freq range, radio π»enum wiphy_nan_flags(9),struct wiphy_nan_capa(9)β NAN flags and NAN capabilities at the wiphy level.struct wiphy(9),wiphy_priv(9),priv_to_wiphy(9)β the wiphy struct, its private data, and the way back. iconic πset_wiphy_dev(9),wiphy_dev(9),wiphy_name(9)β set the dev, get the dev, get the name.wiphy_new_nm(9),wiphy_new(9)β new wiphy (named version and the plain one).wiphy_register(9),rcu_dereference_wiphy(9),wiphy_dereference(9),get_wiphy_regdom(9)β register, rcu dereference, dereference, get the regdomain.wiphy_unregister(9),wiphy_free(9)β unregister and free. the sad part πwiphy_lock(9),wiphy_unlock(9)β lock it, unlock it. mutual besties πwiphy_work_queue(9),wiphy_work_cancel(9),wiphy_work_flush(9)β queue, cancel, flush the work.wiphy_delayed_work_queue(9),wiphy_delayed_work_cancel(9),wiphy_delayed_work_flush(9),wiphy_delayed_work_pending(9)β the delayed versions: queue, cancel, flush, pending.wiphy_hrtimer_work_queue(9),wiphy_hrtimer_work_cancel(9),wiphy_hrtimer_work_flush(9),wiphy_hrtimer_work_pending(9)β and the hrtimer versions: queue, cancel, flush, pending β°enum ieee80211_ap_reg_power(9),struct wireless_dev(9)β AP regulatory power and the wireless_dev struct.wdev_priv(9),wdev_chandef(9)β wdev private data and wdev chandef.
π§ Utility functions & data path helpers
Utility functions(9)β the utility chapter, the helpful one π«Άieee80211_channel_equal(9),ieee80211_channel_to_khz(9),ieee80211_channel_to_freq_khz(9)β channel equality, channel to kHz, channel to freq in kHz.ieee80211_channel_to_frequency(9),ieee80211_freq_khz_to_channel(9),ieee80211_frequency_to_channel(9)β channel to frequency, kHz freq to channel, frequency to channel.ieee80211_get_channel_khz(9),ieee80211_get_channel(9),cfg80211_channel_is_psc(9)β get channel in kHz, get channel, is PSC.ieee80211_radio_freq_range_valid(9),cfg80211_radio_chandef_valid(9),cfg80211_wdev_channel_allowed(9)β radio freq range valid, radio chandef valid, wdev channel allowed βieee80211_get_response_rate(9),ieee80211_mandatory_rates(9)β get the response rate and the mandatory rates.struct ieee80211_radiotap_iterator(9),ieee80211_get_hdrlen_from_skb(9)β radiotap iterator, header length from skb.ieee80211_hdrlen(9),ieee80211_get_mesh_hdrlen(9)β header length, mesh header length.Data path helpers(9)β the data path chapter.ieee80211_data_to_8023_exthdr(9),ieee80211_data_to_8023(9)β data to 802.3 with extended header, and the plain one.ieee80211_is_valid_amsdu(9),ieee80211_amsdu_to_8023s(9)β is valid AMSDU, AMSDU to 802.3s.ieee80211_get_8023_tunnel_proto(9),ieee80211_strip_8023_mesh_hdr(9)β get the 802.3 tunnel proto, strip the 802.3 mesh header.cfg80211_classify8021d(9),cfg80211_find_elem_match(9),cfg80211_find_ie_match(9)β classify 802.1d, find elem match, find IE match.cfg80211_find_elem(9),cfg80211_find_ie(9),cfg80211_find_ext_elem(9),cfg80211_find_ext_ie(9)β find elem, find IE, find ext elem, find ext IE. the finder family πcfg80211_find_vendor_elem(9),cfg80211_find_vendor_ie(9)β find vendor elem, find vendor IE.enum cfg80211_rnr_iter_ret(9),cfg80211_iter_rnr(9),cfg80211_defragment_element(9),cfg80211_send_layer2_update(9)β RNR iter return, iterate RNR, defragment element, send layer 2 update.
π‘ Regulatory, internal regdb & BSS informing
Regulatory enforcement infrastructure(9)β the regulatory chapter, the law πregulatory_hint(9),regulatory_set_wiphy_regd(9),regulatory_set_wiphy_regd_sync(9)β regulatory hint, set wiphy regdomain, and the sync version.wiphy_apply_custom_regulatory(9),freq_reg_info(9),reg_initiator_name(9)β apply custom regulatory, freq reg info, reg initiator name.regulatory_pre_cac_allowed(9)β is pre-CAC allowed.Internal regulatory db functions(9)β the internal regulatory db chapter.reg_query_regdb_wmm(9)β query the regdb for WMM.cfg80211_scan_done(9),cfg80211_sched_scan_results(9)β scan done, sched scan results.cfg80211_sched_scan_stopped(9),cfg80211_sched_scan_stopped_locked(9)β sched scan stopped, plus the locked flavour.cfg80211_inform_bss_frame_data(9),cfg80211_gen_new_bssid(9)β inform BSS with frame data, generate a new BSSID.cfg80211_is_element_inherited(9),cfg80211_merge_profile(9),enum cfg80211_bss_frame_type(9)β is element inherited, merge profile, BSS frame type.cfg80211_get_ies_channel_number(9),cfg80211_ssid_eq(9),cfg80211_inform_bss_data(9)β get IEs channel number, SSID equality, inform BSS with data.__cfg80211_get_bss(9),cfg80211_get_bss(9)β the underscore get-BSS and the regular get-BSS.cfg80211_ref_bss(9),cfg80211_put_bss(9),cfg80211_unlink_bss(9),cfg80211_bss_iter(9)β ref, put, unlink, iterate. the BSS lifecycle besties π
π« MLME, station events & notifications
cfg80211_rx_mlme_mgmt(9),cfg80211_auth_timeout(9)β receive MLME management frame, auth timeout.struct cfg80211_rx_assoc_resp_data(9),cfg80211_rx_assoc_resp(9)β rx assoc resp data and the rx assoc resp call.struct cfg80211_assoc_failure(9),cfg80211_assoc_failure(9)β assoc failure struct and the assoc failure call. not the vibe πcfg80211_tx_mlme_mgmt(9),cfg80211_rx_unprot_mlme_mgmt(9)β tx MLME mgmt, rx unprotected MLME mgmt.cfg80211_michael_mic_failure(9),cfg80211_ibss_joined(9)β Michael MIC failure, IBSS joined.cfg80211_notify_new_peer_candidate(9)β notify a new peer candidate.RFkill integration(9)β the RFkill chapter.wiphy_rfkill_set_hw_state_reason(9),wiphy_rfkill_start_polling(9),wiphy_rfkill_stop_polling(9)β set hw state with a reason, start polling, stop polling.Vendor commands(9)β the vendor commands chapter.cfg80211_vendor_cmd_alloc_reply_skb(9),cfg80211_vendor_cmd_reply(9),cfg80211_vendor_cmd_get_sender(9)β alloc a reply skb, send the reply, get the sender.cfg80211_vendor_event_alloc(9),cfg80211_vendor_event_alloc_ucast(9),cfg80211_vendor_event(9)β alloc a vendor event, alloc a unicast one, send the event β¨Test mode(9)β the test mode chapter.cfg80211_testmode_alloc_reply_skb(9),cfg80211_testmode_reply(9)β testmode alloc reply skb, testmode reply.cfg80211_testmode_alloc_event_skb(9),cfg80211_testmode_event(9)β testmode alloc event skb, testmode event.
π connect / roam / disconnect results & the notify girlies
struct cfg80211_fils_resp_params(9),struct cfg80211_connect_resp_params(9)β FILS response params and connect response params. literally the main characters of this page π₯cfg80211_connect_bss(9),cfg80211_connect_result(9),cfg80211_connect_timeout(9)β connect BSS, connect result, connect timeout.struct cfg80211_roam_info(9),cfg80211_roamed(9)β roam info and the roamed call π¦cfg80211_port_authorized(9),cfg80211_disconnected(9)β port authorized, disconnected.cfg80211_ready_on_channel(9),cfg80211_remain_on_channel_expired(9),cfg80211_tx_mgmt_expired(9)β ready on channel, remain-on-channel expired, tx mgmt expired.cfg80211_sinfo_alloc_tid_stats(9),cfg80211_link_sinfo_alloc_tid_stats(9)β alloc TID stats for station info, and the link version.cfg80211_sinfo_release_content(9),cfg80211_new_sta(9)β release station info content, new station.cfg80211_del_sta_sinfo(9),cfg80211_del_sta(9),cfg80211_conn_failed(9)β delete station with info, delete station, connection failed.struct cfg80211_rx_info(9),cfg80211_rx_mgmt_ext(9)β rx info struct and the extended rx mgmt call.cfg80211_rx_mgmt_khz(9),cfg80211_rx_mgmt(9)β rx mgmt in kHz and the plain rx mgmt.struct cfg80211_tx_status(9),cfg80211_mgmt_tx_status_ext(9),cfg80211_mgmt_tx_status(9)β tx status struct, extended mgmt tx status, mgmt tx status.cfg80211_control_port_tx_status(9),cfg80211_rx_control_port(9)β control port tx status and rx control port.cfg80211_cqm_rssi_notify(9),cfg80211_cqm_pktloss_notify(9)β CQM RSSI notify, CQM packet loss notify πcfg80211_cqm_txe_notify(9),cfg80211_cqm_beacon_loss_notify(9)β CQM TX error notify, CQM beacon loss notify.__cfg80211_radar_event(9),cfg80211_sta_opmode_change_notify(9)β the radar event and station opmode change notify.cfg80211_cac_event(9),cfg80211_background_cac_abort(9)β CAC event, background CAC abort.cfg80211_gtk_rekey_notify(9),cfg80211_pmksa_candidate_notify(9)β GTK rekey notify, PMKSA candidate notify.cfg80211_rx_spurious_frame(9),cfg80211_rx_unexpected_4addr_frame(9)β spurious frame rx and unexpected 4-address frame rx πcfg80211_probe_status(9),cfg80211_report_obss_beacon_khz(9),cfg80211_report_obss_beacon(9)β probe status, report OBSS beacon in kHz, report OBSS beacon.struct cfg80211_beaconing_check_config(9)β the beaconing check config, and that's the whole list bestie, you made it π
β¦and the see-also list keeps going, because apparently this page's love language is "and also everyone I've ever met" ππ. These are all your mutuals, bestie β go say hi:
cfg80211_reg_check_beaconing(9)cfg80211_reg_can_beacon(9)cfg80211_reg_can_beacon_relax(9)cfg80211_ch_switch_notify(9)cfg80211_ch_switch_started_notify(9)ieee80211_operating_class_to_band(9)ieee80211_operating_class_to_chandef(9)ieee80211_chandef_to_operating_class(9)ieee80211_chandef_to_khz(9)cfg80211_tdls_oper_request(9)cfg80211_calculate_bitrate(9)cfg80211_unregister_wdev(9)cfg80211_register_netdevice(9)cfg80211_unregister_netdevice(9)struct cfg80211_ft_event_params(9)cfg80211_ft_event(9)cfg80211_get_p2p_attr(9)ieee80211_ie_split_ric(9)ieee80211_ie_split(9)ieee80211_fragment_element(9)cfg80211_report_wowlan_wakeup(9)cfg80211_crit_proto_stopped(9)ieee80211_get_num_supported_channels(9)cfg80211_check_combinations(9)cfg80211_iter_combinations(9)cfg80211_get_radio_idx_by_chan(9)cfg80211_stop_link(9)cfg80211_stop_iface(9)cfg80211_shutdown_all_interfaces(9)π«Άwiphy_ext_feature_set(9)wiphy_ext_feature_isset(9)cfg80211_free_nan_func(9)struct cfg80211_nan_match_params(9)cfg80211_nan_match(9)cfg80211_nan_func_terminated(9)cfg80211_nan_sched_update_done(9)cfg80211_external_auth_request(9)cfg80211_pmsr_report(9)cfg80211_pmsr_complete(9)cfg80211_iftype_allowed(9)cfg80211_assoc_comeback(9)cfg80211_update_owe_info_event(9)cfg80211_bss_flush(9)cfg80211_bss_color_notify(9)cfg80211_obss_color_collision_notify(9)cfg80211_color_change_started_notify(9)cfg80211_color_change_aborted_notify(9)cfg80211_color_change_notify(9)cfg80211_6ghz_power_type(9)cfg80211_links_removed(9)struct cfg80211_mlo_reconf_done_data(9)cfg80211_mlo_reconf_add_done(9)cfg80211_schedule_channels_check(9)cfg80211_epcs_changed(9)cfg80211_next_nan_dw_notif(9)cfg80211_nan_cluster_joined(9)cfg80211_nan_ulw_update(9)cfg80211_nan_channel_evac(9)wiphy_locked_debugfs_read(9)wiphy_locked_debugfs_write(9)cfg80211_s1g_get_start_freq_khz(9)cfg80211_s1g_get_end_freq_khz(9)cfg80211_s1g_get_primary_sibling(9)cfg80211_incumbent_signal_notify(9)π¦
No cap, that's 64 whole cross-references β the full friend group, every single one a real page you can go open. Obsessed with the follow-through, honestly π β¨
That's a wrap on this little masterpiece, bestie π It lives in ./include/net and it's dated October 2026 β so if you're reading this in October 2026, congrats, you're right on schedule, iconic behaviour β°π It's the cfg80211_connect_done(9) page and we are done β mwah ππ
π¦ 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