cfg80211_nan_ulw_update(9)
๐ธ NAME ๐ธ
cfg80211_nan_ulw_update โ Notify user space about ULW update
Okay so this one is from the Kernel API Manual, bestie, and it's serving โdriver tells user space that the ULW blob changedโ energy. Very niche, very real.
โจ SYNOPSIS โจ
void cfg80211_nan_ulw_update (struct wireless_dev *wdev , const u8 *ulw
, size_t ulw_len , gfp_t gfp );
๐ ARGUMENTS ๐
wdevโ Pointer to the wireless device structure. It's the wireless-device pointer, bestie, the main character of this little call.ulwโ Pointer to the ULW blob data. Yep, the actual blob.ulw_lenโ Length of the ULW blob in bytes. Count 'em, don't guess.gfpโ Memory allocation flags. The allocator vibes, basically.
๐ฆ DESCRIPTION ๐ฆ
Here's the tea: this function is used by drivers to notify user space when the device's ULW (Unaligned Schedule) blob has been updated. User space can use this blob to attach to frames sent to peers.
That's the whole plot. Iconic. ๐
๐ฅ the source of truth & the door
Bestie, before we get into the 300-ish legendaries, here's where the whole thing actually lives and how a device gets in:
- the kernel file
./include/net/cfg80211.hโ and with itIntroduction(9)โจ the origin story, read this one first Device registration(9)โ how a device gets its whole life started ๐
๐ฆ bands, channels & capability lore
This is the "what can your radio even do" chunk. Channels, rates, HT/VHT/HE/EHT/UHR caps, EDMG, S1G โ all the alphabet soup, all iconic:
enum ieee80211_channel_flags(9)โ the little flags that say things about a channelstruct ieee80211_channel(9)โ the channel herself, main character energyenum ieee80211_rate_flags(9)โ flags for rates, yes reallyenum ieee80211_bss_type(9)โ what kind of BSS we're even talking aboutenum ieee80211_privacy(9)โ privacy vibes (the enum, not the concept)struct ieee80211_rate(9)โ a rate, as a struct, as one doesstruct ieee80211_he_obss_pd(9)โ HE OBSS PD, say it five times fast ๐ญstruct cfg80211_he_bss_color(9)โ the BSS color situationstruct ieee80211_sta_ht_cap(9)โ HT capabilities, the classicstruct ieee80211_sta_vht_cap(9)โ VHT caps, she leveled upstruct ieee80211_sta_he_cap(9)โ HE caps, very nowstruct ieee80211_eht_mcs_nss_supp(9)โ MCS/NSS support for EHT, gesundheitstruct ieee80211_sta_eht_cap(9)โ EHT caps, the newer erastruct ieee80211_sta_uhr_cap(9)โ UHR caps, ultra high reliability bestiestruct ieee80211_sband_iftype_data(9)โ per-band, per-iftype data, the organizerenum ieee80211_edmg_bw_config(9)โ EDMG bandwidth config enum ๐struct ieee80211_edmg(9)โ the EDMG struct itselfstruct ieee80211_sta_s1g_cap(9)โ S1G capabilities, for the low-power girliesstruct ieee80211_supported_band(9)โ a whole supported band, like a whole personality_ieee80211_set_sband_iftype_data(9)โ the underscore version, the private one, don't be weird about itieee80211_set_sband_iftype_data(9)โ and the public setter, slayfor_each_sband_iftype_data(9)โ a loop macro, she iterates ๐ieee80211_get_sband_iftype_data(9)โ the getter, matching the setter, as the universe intendedieee80211_get_he_iftype_cap(9)โ grab HE caps for an iftypeieee80211_get_he_6ghz_capa(9)โ HE 6 GHz capability, the fancy bandieee80211_get_eht_iftype_cap(9)โ EHT caps per iftypeieee80211_get_uhr_iftype_cap(9)โ UHR caps per iftype, newest girl on the blockwiphy_read_of_freq_limits(9)โ reads frequency limits, presumably from OF ๐ธ
๐ actions & configuration (the big one)
Everything you can actually do โ interfaces, keys, chandefs, beacons, AP settings, stations, SAR, mesh, OCB, txq. Grab a snack ๐
Actions and configuration(9)โ the section that holds basically this whole chunk togetherstruct vif_params(9)โ virtual interface params, the basicsstruct key_params(9)โ key params, security-corestruct cfg80211_chan_def(9)โ channel definition, the chandef legend herselfstruct cfg80211_tid_cfg(9)โ TID config, one TID at a timestruct cfg80211_tid_config(9)โ the collection of TID configsstruct cfg80211_fils_aad(9)โ FILS AAD, yes that's the namestruct cfg80211_set_hw_timestamp(9)โ hardware timestamp setting, precise girliecfg80211_get_chandef_type(9)โ asks a chandef what type she iscfg80211_chandef_create(9)โ makes a chandef from scratch โจcfg80211_chandef_identical(9)โ are these two chandefs literally the samecfg80211_chandef_is_edmg(9)โ is she EDMG or not, quick checkcfg80211_chandef_is_s1g(9)โ and is she S1Gcfg80211_chandef_compatible(9)โ do these chandefs get alongnl80211_chan_width_to_mhz(9)โ width to MHz, the conversioncfg80211_chandef_get_width(9)โ get the width out of a chandefcfg80211_chandef_valid(9)โ vibe check: is this chandef validcfg80211_chandef_usable(9)โ can we actually use it thoughcfg80211_chandef_dfs_required(9)โ does this need DFScfg80211_chandef_dfs_usable(9)โ is the DFS one usablecfg80211_chandef_dfs_cac_time(9)โ CAC time for the chandef, the waiting game ๐ญcfg80211_chandef_primary(9)โ the primary channel bitcfg80211_chandef_npca_valid(9)โ NPCA validity checkcfg80211_chandef_add_npca(9)โ add NPCA to a chandefcfg80211_chandef_add_dbe(9)โ add DBE to a chandef, DBE girlies risenl80211_send_chandef(9)โ sends a chandef out into the world ๐๏ธieee80211_chandef_max_power(9)โ max power for the chandefcfg80211_chandef_s1g_pri_width(9)โ S1G primary widthcfg80211_any_usable_channels(9)โ is there literally any usable channel, pleaseenum survey_info_flags(9)โ survey info flagsstruct survey_info(9)โ the survey info itselfstruct cfg80211_crypto_settings(9)โ crypto settings, keys and ciphers and suchstruct cfg80211_mbssid_config(9)โ MBSSID configstruct cfg80211_mbssid_elems(9)โ the MBSSID elementsstruct cfg80211_rnr_elems(9)โ RNR elements, the neighbor report girliesstruct cfg80211_beacon_data(9)โ beacon data, the beacon payload situationstruct cfg80211_acl_data(9)โ ACL data, who's allowed instruct cfg80211_fils_discovery(9)โ FILS discovery stuffstruct cfg80211_unsol_bcast_probe_resp(9)โ unsolicited broadcast probe response, that's the whole name, breathestruct cfg80211_s1g_short_beacon(9)โ S1G short beaconstruct cfg80211_ap_settings(9)โ AP settings, the master doc for bringing up an AP ๐struct cfg80211_ap_update(9)โ AP update, for changing things livestruct cfg80211_csa_settings(9)โ channel switch announcement settingsstruct cfg80211_color_change_settings(9)โ color change settingsstruct iface_combination_params(9)โ interface combination params, the "can these ifaces coexist" bookkeepingenum station_parameters_apply_mask(9)โ the apply mask for station paramsstruct sta_txpwr(9)โ station TX powerstruct link_station_parameters(9)โ link station params, MLD erastruct link_station_del_parameters(9)โ and the delete-side params for a link stationstruct cfg80211_ttlm_params(9)โ TTLM paramsstruct station_parameters(9)โ station params, the O.G.struct station_del_parameters(9)โ params for deleting a stationenum cfg80211_station_type(9)โ station type enumcfg80211_check_station_change(9)โ checks what changed on a stationenum rate_info_flags(9)โ rate info flagsenum rate_info_bw(9)โ rate info bandwidth enumstruct rate_info(9)โ the rate info structenum bss_param_flags(9)โ BSS param flagsstruct sta_bss_parameters(9)โ station BSS parametersstruct cfg80211_txq_stats(9)โ txq stats, numbers girliesstruct cfg80211_tid_stats(9)โ per-TID statsstruct link_station_info(9)โ link station infostruct station_info(9)โ the big station info structstruct cfg80211_sar_sub_specs(9)โ SAR sub-specsstruct cfg80211_sar_specs(9)โ SAR specsstruct cfg80211_sar_freq_ranges(9)โ SAR frequency rangesstruct cfg80211_sar_capa(9)โ SAR capabilitiescfg80211_get_station(9)โ get a station, go get herenum monitor_flags(9)โ monitor flagsenum mpath_info_flags(9)โ mesh path info flagsstruct mpath_info(9)โ mesh path infoenum wiphy_bss_param_flags(9)โ wiphy BSS param flagsstruct bss_parameters(9)โ BSS parametersstruct mesh_config(9)โ mesh configstruct mesh_setup(9)โ mesh setup, the bring-up onestruct ocb_setup(9)โ OCB setup, niche but validstruct ieee80211_txq_params(9)โ txq params
๐ scanning & BSS list handling
Everything about finding networks and keeping a list of them. Very "who's out there" energy ๐ซถ
Scanning and BSS list handling(9)โ the umbrella section for all of thisstruct cfg80211_ssid(9)โ an SSID as a struct, the network name wrapperstruct cfg80211_scan_info(9)โ scan infostruct cfg80211_scan_6ghz_params(9)โ 6 GHz scan params, the special onesstruct cfg80211_scan_request(9)โ a scan request, the whole askstruct cfg80211_match_set(9)โ match set, for sched scan filteringstruct cfg80211_sched_scan_plan(9)โ a sched scan plan, planning girliestruct cfg80211_bss_select_adjust(9)โ BSS selection adjuststruct cfg80211_sched_scan_request(9)โ the sched scan requestenum cfg80211_signal_type(9)โ signal type enumstruct cfg80211_inform_bss(9)โ informing the kernel about a BSSstruct cfg80211_bss_ies(9)โ the IEs of a BSSstruct cfg80211_bss(9)โ the BSS herself, absolute iconieee80211_bss_get_elem(9)โ pull an element out of a BSSieee80211_bss_get_ie(9)โ and the IE flavor of thatstruct cfg80211_auth_request(9)โ auth requeststruct cfg80211_assoc_link(9)โ an assoc linkstruct cfg80211_ml_reconf_req(9)โ ML reconfig requestenum cfg80211_assoc_req_flags(9)โ assoc request flagsstruct cfg80211_assoc_request(9)โ assoc requeststruct cfg80211_deauth_request(9)โ deauth request, the sad one ๐ญstruct cfg80211_disassoc_request(9)โ disassoc requeststruct cfg80211_ibss_params(9)โ IBSS paramsstruct cfg80211_bss_selection(9)โ BSS selectionstruct cfg80211_connect_params(9)โ connect params, the whole connect askenum cfg80211_connect_params_changed(9)โ which connect params changedenum wiphy_params_flags(9)โ wiphy param flagsstruct cfg80211_pmksa(9)โ PMKSA, the caching situationstruct cfg80211_pkt_pattern(9)โ packet pattern, wowlan matchingstruct cfg80211_wowlan_tcp(9)โ wowlan TCP, very specific, very realstruct cfg80211_wowlan(9)โ wowlan configstruct cfg80211_coalesce_rules(9)โ coalesce rulesstruct cfg80211_coalesce(9)โ coalesce configstruct cfg80211_wowlan_nd_match(9)โ wowlan net-detect matchstruct cfg80211_wowlan_nd_info(9)โ wowlan net-detect infostruct cfg80211_wowlan_wakeup(9)โ the wakeup reportstruct cfg80211_gtk_rekey_data(9)โ GTK rekey datastruct cfg80211_update_ft_ies_params(9)โ update FT IEs paramsstruct cfg80211_mgmt_tx_params(9)โ mgmt TX paramsstruct cfg80211_dscp_exception(9)โ a DSCP exceptionstruct cfg80211_dscp_range(9)โ a DSCP rangestruct cfg80211_qos_map(9)โ QoS map
๐ง NAN (neighbor awareness networking) & friends
The whole NAN family plus the auth/PMK/measurement crew that follows. So much lore ๐
Neighbor Awareness Networking (NAN)(9)โ the NAN section, the whole awareness agendastruct cfg80211_nan_band_config(9)โ NAN band configstruct cfg80211_nan_conf(9)โ NAN configstruct cfg80211_nan_channel(9)โ NAN channelstruct cfg80211_nan_local_sched(9)โ NAN local schedulestruct cfg80211_nan_peer_map(9)โ NAN peer mapstruct cfg80211_nan_peer_sched(9)โ NAN peer scheduleenum cfg80211_nan_conf_changes(9)โ NAN config changesstruct cfg80211_nan_func_filter(9)โ NAN function filterstruct cfg80211_nan_func(9)โ NAN function, the big onestruct cfg80211_pmk_conf(9)โ PMK configstruct cfg80211_external_auth_params(9)โ external auth paramsstruct cfg80211_ftm_responder_stats(9)โ FTM responder statsstruct cfg80211_pmsr_ftm_result(9)โ PMSR FTM resultstruct cfg80211_pmsr_result(9)โ PMSR resultstruct cfg80211_pmsr_ftm_request_peer(9)โ PMSR FTM request peerstruct cfg80211_pmsr_request_peer(9)โ PMSR request peerstruct cfg80211_pmsr_request(9)โ PMSR requeststruct cfg80211_update_owe_info(9)โ update OWE infostruct mgmt_frame_regs(9)โ management frame registrations
๐ the ops, the wiphy & the plumbing
Driver ops, wiphy flags/caps, then the entire "wiphy lifecycle & locking" cinematic universe. This is the backbone, no cap:
struct cfg80211_ops(9)โ the ops struct, the driver's whole contractenum wiphy_flags(9)โ wiphy flagsstruct ieee80211_iface_limit(9)โ interface limitsstruct ieee80211_iface_combination(9)โ interface combinationsenum wiphy_wowlan_support_flags(9)โ wowlan support flagsstruct wiphy_wowlan_support(9)โ wowlan supportstruct wiphy_coalesce_support(9)โ coalesce supportenum wiphy_vendor_command_flags(9)โ vendor command flagsenum wiphy_opmode_flag(9)โ opmode flagstruct sta_opmode_info(9)โ station opmode infostruct wiphy_vendor_command(9)โ a vendor command definitionstruct wiphy_iftype_ext_capab(9)โ iftype extended capabilitiescfg80211_get_iftype_ext_capa(9)โ get those ext capasstruct cfg80211_pmsr_capabilities(9)โ PMSR capabilitiesstruct wiphy_iftype_akm_suites(9)โ iftype AKM suitesstruct wiphy_radio_cfg(9)โ wiphy radio configstruct wiphy_radio_freq_range(9)โ radio frequency rangestruct wiphy_radio(9)โ the radio structenum wiphy_nan_flags(9)โ wiphy NAN flagsstruct wiphy_nan_capa(9)โ wiphy NAN capabilitiesstruct wiphy(9)โ the wiphy herself, the moment ๐wiphy_priv(9)โ the private data hanging off a wiphypriv_to_wiphy(9)โ go the other way, private back to wiphyset_wiphy_dev(9)โ set the wiphy's devicewiphy_dev(9)โ get the wiphy's devicewiphy_name(9)โ the wiphy namewiphy_new_nm(9)โ allocate a wiphy, name versionwiphy_new(9)โ allocate a wiphy, classicwiphy_register(9)โ register her, she's official โจrcu_dereference_wiphy(9)โ RCU dereference for a wiphy, careful girliewiphy_dereference(9)โ the wiphy dereference helperget_wiphy_regdom(9)โ get the wiphy's regulatory domainwiphy_unregister(9)โ unregister, the goodbyewiphy_free(9)โ free it, clean up after yourselfwiphy_lock(9)โ lock the wiphy ๐wiphy_unlock(9)โ unlock it, thank uwiphy_work_queue(9)โ queue wiphy workwiphy_work_cancel(9)โ cancel itwiphy_work_flush(9)โ flush itwiphy_delayed_work_queue(9)โ queue delayed wiphy workwiphy_delayed_work_cancel(9)โ cancel the delayed workwiphy_delayed_work_flush(9)โ flush the delayed workwiphy_delayed_work_pending(9)โ is it pending thowiphy_hrtimer_work_queue(9)โ queue hrtimer work โฐwiphy_hrtimer_work_cancel(9)โ cancel hrtimer workwiphy_hrtimer_work_flush(9)โ flush hrtimer workwiphy_hrtimer_work_pending(9)โ hrtimer work pending checkenum ieee80211_ap_reg_power(9)โ AP regulatory power enumstruct wireless_dev(9)โ the wireless dev, wdev supremacywdev_priv(9)โ wdev private datawdev_chandef(9)โ the wdev's chandef
โญ utility functions
The little helpers that make everything else possible. Underrated, honestly:
Utility functions(9)โ the section that says "here be helpers"ieee80211_channel_equal(9)โ are these channels equalieee80211_channel_to_khz(9)โ channel โ kHzieee80211_channel_to_freq_khz(9)โ channel โ frequency in kHzieee80211_channel_to_frequency(9)โ channel โ frequency, the classicieee80211_freq_khz_to_channel(9)โ kHz freq โ channelieee80211_frequency_to_channel(9)โ frequency โ channel, the classic flippedieee80211_get_channel_khz(9)โ get a channel from a kHz frequencyieee80211_get_channel(9)โ get a channel, the short onecfg80211_channel_is_psc(9)โ is this channel a PSCieee80211_radio_freq_range_valid(9)โ is the radio freq range validcfg80211_radio_chandef_valid(9)โ is the radio chandef validcfg80211_wdev_channel_allowed(9)โ is this channel allowed for the wdevieee80211_get_response_rate(9)โ the response rateieee80211_mandatory_rates(9)โ the mandatory ratesstruct ieee80211_radiotap_iterator(9)โ radiotap iterator, the iterator girlieieee80211_get_hdrlen_from_skb(9)โ header length from an skbieee80211_hdrlen(9)โ header lengthieee80211_get_mesh_hdrlen(9)โ mesh header length
๐ซถ data path helpers
Turning frames into 802.3 and finding IEs in a buffer. Unglamorous, essential, we respect her:
Data path helpers(9)โ the section header for this whole crewieee80211_data_to_8023_exthdr(9)โ 802.11 โ 802.3 with the extended header versionieee80211_data_to_8023(9)โ the plain 802.11 โ 802.3 converterieee80211_is_valid_amsdu(9)โ is this AMSDU validieee80211_amsdu_to_8023s(9)โ AMSDU โ multiple 802.3 framesieee80211_get_8023_tunnel_proto(9)โ get the 802.3 tunnel protocolieee80211_strip_8023_mesh_hdr(9)โ strip the 802.3 mesh headercfg80211_classify8021d(9)โ classify 802.1dcfg80211_find_elem_match(9)โ find an element by matchcfg80211_find_ie_match(9)โ find an IE by matchcfg80211_find_elem(9)โ find an elementcfg80211_find_ie(9)โ find an IEcfg80211_find_ext_elem(9)โ find an extended elementcfg80211_find_ext_ie(9)โ find an extended IEcfg80211_find_vendor_elem(9)โ find a vendor elementcfg80211_find_vendor_ie(9)โ find a vendor IEenum cfg80211_rnr_iter_ret(9)โ RNR iterator return enumcfg80211_iter_rnr(9)โ iterate RNR, she loopscfg80211_defragment_element(9)โ defragment an elementcfg80211_send_layer2_update(9)โ send a layer 2 update
๐ regulatory enforcement infrastructure
The law. The vibes. The "you may not transmit there" energy:
Regulatory enforcement infrastructure(9)โ the section for all the rulesregulatory_hint(9)โ a regulatory hintregulatory_set_wiphy_regd(9)โ set the wiphy's regdomainregulatory_set_wiphy_regd_sync(9)โ and the sync version, she waitswiphy_apply_custom_regulatory(9)โ apply a custom regulatoryfreq_reg_info(9)โ frequency regulatory inforeg_initiator_name(9)โ the regulatory initiator's nameregulatory_pre_cac_allowed(9)โ is pre-CAC allowedInternal regulatory db functions(9)โ the internal regdb sectionreg_query_regdb_wmm(9)โ query the regdb for WMM
๐ notifying the world: BSS, MLME & friends
All the "hey kernel, something happened" calls. Very main character, very loud ๐ฃ
cfg80211_scan_done(9)โ scan's donecfg80211_sched_scan_results(9)โ sched scan results are incfg80211_sched_scan_stopped(9)โ sched scan stoppedcfg80211_sched_scan_stopped_locked(9)โ sched scan stopped, but lockedcfg80211_inform_bss_frame_data(9)โ inform about a BSS framecfg80211_gen_new_bssid(9)โ generate a new BSSIDcfg80211_is_element_inherited(9)โ is this element inheritedcfg80211_merge_profile(9)โ merge a profileenum cfg80211_bss_frame_type(9)โ BSS frame type enumcfg80211_get_ies_channel_number(9)โ get the channel number out of the IEscfg80211_ssid_eq(9)โ are these SSIDs equalcfg80211_inform_bss_data(9)โ inform about BSS data__cfg80211_get_bss(9)โ the double-underscore get BSS, the internal onecfg80211_get_bss(9)โ get a BSS, the public onecfg80211_ref_bss(9)โ take a reference on a BSScfg80211_put_bss(9)โ drop the referencecfg80211_unlink_bss(9)โ unlink a BSScfg80211_bss_iter(9)โ iterate BSSescfg80211_rx_mlme_mgmt(9)โ receive an MLME management framecfg80211_auth_timeout(9)โ auth timed out ๐ญstruct cfg80211_rx_assoc_resp_data(9)โ the data for a received assoc responsecfg80211_rx_assoc_resp(9)โ receive an assoc responsestruct cfg80211_assoc_failure(9)โ assoc failure, as a structcfg80211_assoc_failure(9)โ report the assoc failurecfg80211_tx_mlme_mgmt(9)โ transmit an MLME management framecfg80211_rx_unprot_mlme_mgmt(9)โ receive an unprotected MLME mgmt framecfg80211_michael_mic_failure(9)โ Michael MIC failure, the infamous onecfg80211_ibss_joined(9)โ joined an IBSScfg80211_notify_new_peer_candidate(9)โ a new peer candidate appeared
๐ธ rfkill integration
Small section, big "turn the radio off" energy:
RFkill integration(9)โ the sectionwiphy_rfkill_set_hw_state_reason(9)โ set the hardware rfkill state, with a reasonwiphy_rfkill_start_polling(9)โ start pollingwiphy_rfkill_stop_polling(9)โ stop polling
๐ vendor commands
For the drivers with main character syndrome and proprietary extras:
Vendor commands(9)โ the sectioncfg80211_vendor_cmd_alloc_reply_skb(9)โ allocate a reply skb for a vendor cmdcfg80211_vendor_cmd_reply(9)โ send that replycfg80211_vendor_cmd_get_sender(9)โ who sent the vendor cmdcfg80211_vendor_event_alloc(9)โ allocate a vendor eventcfg80211_vendor_event_alloc_ucast(9)โ the unicast variantcfg80211_vendor_event(9)โ send the vendor event
๐ test mode
Yes, it exists. Yes, it's documented. We love a niche queen:
Test mode(9)โ the sectioncfg80211_testmode_alloc_reply_skb(9)โ allocate a testmode reply skbcfg80211_testmode_reply(9)โ send the testmode replycfg80211_testmode_alloc_event_skb(9)โ allocate a testmode event skbcfg80211_testmode_event(9)โ send the testmode event
๐ connect, roam, disconnect & the rest of the notification girlies
The whole lifecycle of "you're connectedโฆ now you're notโฆ now you're on another channel":
struct cfg80211_fils_resp_params(9)โ FILS response paramsstruct cfg80211_connect_resp_params(9)โ connect response paramscfg80211_connect_done(9)โ connect is donecfg80211_connect_bss(9)โ connected to a BSScfg80211_connect_result(9)โ the connect resultcfg80211_connect_timeout(9)โ connect timed out, we've all been there ๐ญstruct cfg80211_roam_info(9)โ roam infocfg80211_roamed(9)โ she roamedcfg80211_port_authorized(9)โ port authorizedcfg80211_disconnected(9)โ disconnected, the breakup textcfg80211_ready_on_channel(9)โ ready on channelcfg80211_remain_on_channel_expired(9)โ remain-on-channel expiredcfg80211_tx_mgmt_expired(9)โ mgmt TX expiredcfg80211_sinfo_alloc_tid_stats(9)โ allocate TID stats on a station infocfg80211_link_sinfo_alloc_tid_stats(9)โ and the link versioncfg80211_sinfo_release_content(9)โ release station info contentscfg80211_new_sta(9)โ a new station showed up ๐cfg80211_del_sta_sinfo(9)โ delete a station, with infocfg80211_del_sta(9)โ delete a station, plaincfg80211_conn_failed(9)โ connection failedstruct cfg80211_rx_info(9)โ receive infocfg80211_rx_mgmt_ext(9)โ receive mgmt, extended flavorcfg80211_rx_mgmt_khz(9)โ receive mgmt, kHz flavorcfg80211_rx_mgmt(9)โ receive mgmt, classicstruct cfg80211_tx_status(9)โ TX statuscfg80211_mgmt_tx_status_ext(9)โ mgmt TX status, extendedcfg80211_mgmt_tx_status(9)โ mgmt TX statuscfg80211_control_port_tx_status(9)โ control port TX statuscfg80211_rx_control_port(9)โ receive on the control portcfg80211_cqm_rssi_notify(9)โ CQM RSSI notificationcfg80211_cqm_pktloss_notify(9)โ CQM packet loss notificationcfg80211_cqm_txe_notify(9)โ CQM TX error notificationcfg80211_cqm_beacon_loss_notify(9)โ CQM beacon loss notification__cfg80211_radar_event(9)โ the internal radar eventcfg80211_sta_opmode_change_notify(9)โ station opmode changedcfg80211_cac_event(9)โ CAC eventcfg80211_background_cac_abort(9)โ background CAC abortedcfg80211_gtk_rekey_notify(9)โ GTK rekey notificationcfg80211_pmksa_candidate_notify(9)โ PMKSA candidate notificationcfg80211_rx_spurious_frame(9)โ received a spurious frame ๐cfg80211_rx_unexpected_4addr_frame(9)โ received an unexpected 4-address framecfg80211_probe_status(9)โ probe statuscfg80211_report_obss_beacon_khz(9)โ report an OBSS beacon, kHz flavorcfg80211_report_obss_beacon(9)โ report an OBSS beaconstruct cfg80211_beaconing_check_config(9)โ beaconing check config
and that's the list bestie, every single one accounted for ๐ keep scrolling, there's still more page coming ๐
โฆand the list keeps GOING, bestie ๐ญ like genuinely, here's the rest of the cross-refs โ all sixty-three of them, no skips, no cap:
cfg80211_reg_check_beaconing(9)โ regulatory beaconing check, iconiccfg80211_reg_can_beacon(9)โ can we beacon? asking for a friendcfg80211_reg_can_beacon_relax(9)โ same question, chiller vibescfg80211_ch_switch_notify(9)โ channel switch, announced ๐cfg80211_ch_switch_started_notify(9)โ and it's started nowieee80211_operating_class_to_band(9)โ op class โ band, slayieee80211_operating_class_to_chandef(9)โ op class โ chandefieee80211_chandef_to_operating_class(9)โ the reverse trip ๐ฆieee80211_chandef_to_khz(9)โ gimme those kHzcfg80211_tdls_oper_request(9)โ TDLS oper request, very main charactercfg80211_calculate_bitrate(9)โ math era โจcfg80211_unregister_wdev(9)โ bye wireless devcfg80211_register_netdevice(9)โ hi netdevicecfg80211_unregister_netdevice(9)โ and bye again ๐ญstruct cfg80211_ft_event_params(9)โ the struct, the momentcfg80211_ft_event(9)โ FT event thingscfg80211_get_p2p_attr(9)โ P2P attribute grabieee80211_ie_split_ric(9)โ IE splitting, RIC editionieee80211_ie_split(9)โ classic splitieee80211_fragment_element(9)โ fragmenting elements, periodtcfg80211_report_wowlan_wakeup(9)โ wakeup report ๐ฅฑcfg80211_crit_proto_stopped(9)โ critical proto said stopieee80211_get_num_supported_channels(9)โ count 'emcfg80211_check_combinations(9)โ combo check, obsessedcfg80211_iter_combinations(9)โ iterate those comboscfg80211_get_radio_idx_by_chan(9)โ which radio, by channelcfg80211_stop_link(9)โ link? stopped.cfg80211_stop_iface(9)โ iface? stopped.cfg80211_shutdown_all_interfaces(9)โ all of them, dramatic ๐wiphy_ext_feature_set(9)โ set the ext featurewiphy_ext_feature_isset(9)โ is it set tho ๐cfg80211_free_nan_func(9)โ free the NAN func, we love cleanupstruct cfg80211_nan_match_params(9)โ NAN match params structcfg80211_nan_match(9)โ NAN match, bestie behaviorcfg80211_nan_func_terminated(9)โ NAN func terminated, ripcfg80211_nan_sched_update_done(9)โ sched update done โ๏ธcfg80211_external_auth_request(9)โ external auth reqcfg80211_pmsr_report(9)โ PMSR report coming in hot ๐ฅcfg80211_pmsr_complete(9)โ PMSR complete, we did itcfg80211_iftype_allowed(9)โ is this iftype allowed? vibe checkcfg80211_assoc_comeback(9)โ assoc comeback szncfg80211_update_owe_info_event(9)โ OWE info update eventcfg80211_bss_flush(9)โ flush those BSSescfg80211_bss_color_notify(9)โ BSS color notify ๐cfg80211_obss_color_collision_notify(9)โ collision! notify! ๐จcfg80211_color_change_started_notify(9)โ color change startedcfg80211_color_change_aborted_notify(9)โ color change aborted ๐ญcfg80211_color_change_notify(9)โ color change, plain and simplecfg80211_6ghz_power_type(9)โ 6 GHz power type, highkey relevantcfg80211_links_removed(9)โ links removed, gone girlstruct cfg80211_mlo_reconf_done_data(9)โ MLO reconf done data structcfg80211_mlo_reconf_add_done(9)โ MLO reconf add donecfg80211_schedule_channels_check(9)โ schedule that channels check ๐๏ธcfg80211_epcs_changed(9)โ EPCS changed, notedcfg80211_next_nan_dw_notif(9)โ next NAN DW notifcfg80211_nan_cluster_joined(9)โ joined the NAN cluster ๐ซถcfg80211_nan_channel_evac(9)โ NAN channel evac, evacuate!wiphy_locked_debugfs_read(9)โ debugfs read, locked editionwiphy_locked_debugfs_write(9)โ debugfs write, locked editioncfg80211_s1g_get_start_freq_khz(9)โ S1G start freq in kHzcfg80211_s1g_get_end_freq_khz(9)โ S1G end freq in kHzcfg80211_s1g_get_primary_sibling(9)โ primary sibling ๐ธcfg80211_incumbent_signal_notify(9)โ incumbent signal notify, final boss
okay that's genuinely the whole page, bestie, we made it ๐๐ like that is the entire cross-reference situation, nothing hidden, nothing skipped.
ngl if you actually read all sixty-three of those you're built different โจ
and that's a wrap on cfg80211_nan_ulw_update(9) โ pulled straight from ./include/net in the tree, dated October 2026 (yes, future girlie things ๐ฎ), and you can find the full man page under exactly that name. mwah, go touch some grass now ๐ซถ๐
๐ฆ 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