cfg80211_iter_rnr(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay so bestie, this is cfg80211_iter_rnr(9), straight out of the Kernel API Manual ✨ β€” part 1 of 3, by the way πŸ‘‘. It's the helper that walks through frame elements, finds the RNR elements, and then checks out all their entries. no cap, that's the whole vibe πŸ’….

🌸 NAME 🌸

cfg80211_iter_rnr β€” iterate reduced neighbor report entries πŸ¦‹

✨ SYNOPSIS ✨

       bool cfg80211_iter_rnr (const u8 *elems , size_t elems_len , enum
       cfg80211_rnr_iter_ret (*iter)(void *data, u8 type, const struct
       ieee80211_neighbor_ap_info *info, const u8 *tbtt_info, u8 tbtt_info_len)
       , void *iter_data );

That signature is giving "lots of args" energy, but it's literally just the element blob, its length, your iteration function, and some extra data for that function 🫢.

πŸŽ€ ARGUMENTS πŸŽ€

  • elems β€” the frame elements we're iterating RNR elements β€” and then their entries β€” in 🌈. like, that's the whole starting point, bestie.
  • elems_len β€” the length of the elements πŸ’–. periodt.
  • iter β€” the iteration function πŸ’…. also see enum cfg80211_rnr_iter_ret for what its return value means, iykyk.
  • iter_data β€” additional data that gets passed to the iteration function 🫢. literally just extra stuff for your function to use.

πŸ”₯ RETURN πŸ”₯

Returns true on success πŸ’– β€” that means all entries got successfully iterated, or the iteration function returned RNR_ITER_BREAK πŸ‘‘. Returns false on error 😭 β€” that happens if the iteration function returned RNR_ITER_ERROR, or if the elements were malformed. no cap, malformed elements are a no πŸ’€.

✨ SEE ALSO ✨

okay bestie, this is the part where the manpage stops explaining and just drops the entire friend list. like every single page that's ever been in the group chat πŸ’€ grab a snack, we're going through all of them. no skipping. i'm literally not letting you skip. πŸ“




  • enum station_parameters_apply_mask(9), struct sta_txpwr(9), struct link_station_parameters(9), struct link_station_del_parameters(9), struct cfg80211_ttlm_params(9), struct station_parameters(9), struct station_del_parameters(9), enum cfg80211_station_type(9), cfg80211_check_station_change(9) β€” everything about adding, deleting and changing stations. TTLM params included, we're thorough here. πŸ’œ
  • enum rate_info_flags(9), enum rate_info_bw(9), struct rate_info(9), enum bss_param_flags(9), struct sta_bss_parameters(9), struct cfg80211_txq_stats(9), struct cfg80211_tid_stats(9), struct link_station_info(9), struct station_info(9) β€” rate info, BSS params, txq and TID stats, and the big struct station_info that holds it all together. 🌈
  • struct cfg80211_sar_sub_specs(9), struct cfg80211_sar_specs(9), struct cfg80211_sar_freq_ranges(9), struct cfg80211_sar_capa(9), cfg80211_get_station(9), enum monitor_flags(9), enum mpath_info_flags(9), struct mpath_info(9), enum wiphy_bss_param_flags(9), struct bss_parameters(9), struct mesh_config(9), struct mesh_setup(9), struct ocb_setup(9), struct ieee80211_txq_params(9) β€” SAR specs, monitor flags, mesh path info, BSS parameters, mesh config/setup, OCB setup, txq params. niche but iconic. πŸ’…

  • 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) β€” scanning! scheduled scan plans! BSS selection adjustments! 6 GHz params! go find your network bestie πŸ”
  • struct cfg80211_inform_bss(9), struct cfg80211_bss_ies(9), struct cfg80211_bss(9), ieee80211_bss_get_elem(9), ieee80211_bss_get_ie(9) β€” informing the BSS, the IE storage struct, and the two ways to get an IE out of it. 🧚
  • 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) β€” auth, assoc (multi-link reconf included!), deauth, disassoc, IBSS, connect params, PMKSA. the whole relationship arc, honestly 😭
  • 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) β€” wake-on-WLAN everything, packet patterns, coalesce rules, GTK rekey, FT IEs, mgmt tx params, DSCP exceptions and ranges, QoS map. sleepy-time infrastructure 😴

  • 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) β€” NAN! neighbor awareness! the protocol that's basically "who's nearby, no cap". full struct family included. πŸ¦‹
  • 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) β€” PMK config, external auth, FTM responder stats, and the whole PMSR request/result chain. ranging, bestie πŸ“‘


  • enum ieee80211_ap_reg_power(9), struct wireless_dev(9), wdev_priv(9), wdev_chandef(9) β€” AP regulatory power, the wireless_dev struct, plus its private-data and chandef accessors. πŸŽ€





🏁 and that's the whole reading list, bestie β€” sixty-four lil cross-refs and every single one of them stayed. go click through them, i'll wait πŸ’–

🫢 this page lives in the ./include/net corner of the tree, stamped October 2026, and it's filed under cfg80211_iter_rnr(9) β€” that's the source, the version/date, and the name, all accounted for, periodt ✨ slay, go touch some kernel code πŸ¦‹

πŸ“¦ where this page comes from