STRUCT QLINK_CMD_CHANGE_STA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay so bestie, this is a page from the Kernel API Manual (section 9, the kernel-functions one πŸ’…) and it's all about one very specific little struct. buckle up, it's a short one but it's iconic πŸ’–


🌸 SYNOPSIS 🌸

the shape of it, literally:

struct qlink_cmd_change_sta {
    struct qlink_cmd chdr;
    struct qlink_sta_info_state flag_update;
    __le16 if_type;
    __le16 vlanid;
    u8 sta_addr[ETH_ALEN];
    u8 rsvd[2];
 };

like, six fields, zero notes, absolutely slaying in its simplicity 🫢


πŸŽ€ Members πŸŽ€

  • flag_update β€” the STA flags you're updating, bestie. that's the whole vibe.
  • if_type β€” the mode of interface operation, and it's one of enum qlink_iface_type (not just any number, pick from the enum, iykyk).
  • vlanid β€” the VLAN ID you're assigning to this specific STA πŸ¦‹
  • sta_addr β€” the address of the STA whose parameters you're setting. it's u8 sta_addr[ETH_ALEN], so yes, MAC-address-shaped.

and yeah, there's a chdr and a rsvd[2] in there too β€” chdr is the struct qlink_cmd header riding along at the front, and rsvd is reserved, so please don't be weird about it πŸ™ˆ


πŸ”₯ SEE ALSO πŸ”₯

okay this list is LONG, like genuinely. it's the entire qlink cinematic universe. the source of truth is the kernel file ./drivers/net/wireless/quantenna/qtnfmac/qlink.h, and everything else links out from there:

  • enum qlink_msg_type(9)
  • struct qlink_msg_header(9)
  • enum qlink_hw_capab(9)
  • enum qlink_driver_capab(9)
  • struct qlink_intf_info(9)
  • struct qlink_channel(9)
  • struct qlink_chandef(9)
  • struct qlink_sta_info_state(9)
  • enum qlink_sr_ctrl_flags(9)
  • struct qlink_sr_params(9)
  • enum qlink_cmd_type(9)
  • struct qlink_cmd(9)
  • struct qlink_cmd_init_fw(9)
  • struct qlink_cmd_manage_intf(9)
  • struct qlink_cmd_mgmt_frame_register(9)
  • struct qlink_cmd_frame_tx(9)
  • struct qlink_cmd_get_sta_info(9)
  • struct qlink_cmd_add_key(9)
  • struct qlink_cmd_set_def_key(9)
  • struct qlink_cmd_set_def_mgmt_key(9)
  • struct qlink_cmd_del_sta(9)
  • struct qlink_cmd_connect(9)
  • struct qlink_cmd_external_auth(9)
  • struct qlink_cmd_disconnect(9)
  • struct qlink_cmd_updown(9)
  • enum qlink_band(9)
  • struct qlink_cmd_band_info_get(9)
  • struct qlink_cmd_get_chan_stats(9)
  • enum qlink_reg_initiator(9)
  • enum qlink_user_reg_hint_type(9)
  • struct qlink_cmd_reg_notify(9)
  • enum qlink_chan_sw_flags(9)
  • struct qlink_cmd_chan_switch(9)
  • enum qlink_hidden_ssid(9)
  • struct qlink_cmd_start_ap(9)
  • struct qlink_cmd_start_cac(9)
  • struct qlink_acl_data(9)
  • enum qlink_pm_mode(9)
  • struct qlink_cmd_pm_set(9)
  • enum qlink_txpwr_op(9)
  • struct qlink_cmd_txpwr(9)
  • enum qlink_wowlan_trigger(9)
  • struct qlink_cmd_wowlan_set(9)
  • struct qlink_cmd_ndev_event(9)
  • struct qlink_cmd_ndev_changeupper(9)
  • enum qlink_scan_flags(9)
  • struct qlink_cmd_scan(9)
  • struct qlink_cmd_update_owe(9)
  • struct qlink_resp(9)
  • struct qlink_resp_init_fw(9)
  • enum qlink_dfs_regions(9)
  • struct qlink_resp_get_mac_info(9)
  • struct qlink_resp_get_hw_info(9)
  • struct qlink_resp_manage_intf(9)
  • struct qlink_resp_get_sta_info(9)
  • struct qlink_resp_band_info_get(9)
  • struct qlink_resp_get_chan_stats(9)
  • struct qlink_resp_channel_get(9)
  • struct qlink_resp_txpwr(9)
  • struct qlink_event(9)
  • struct qlink_event_sta_assoc(9)
  • struct qlink_event_sta_deauth(9)
  • struct qlink_event_bss_join(9)
  • struct qlink_event_bss_leave(9)
  • struct qlink_event_freq_change(9)
  • struct qlink_event_rxmgmt(9)
  • struct qlink_event_scan_result(9)
  • enum qlink_scan_complete_flags(9)
  • struct qlink_event_scan_complete(9)
  • struct qlink_event_radar(9)
  • struct qlink_event_external_auth(9)
  • struct qlink_event_mic_failure(9)
  • struct qlink_event_update_owe(9)
  • enum qlink_tlv_id(9)
  • enum qlink_reg_rule_flags(9)
  • struct qlink_tlv_reg_rule(9)
  • struct qlink_tlv_channel(9)
  • struct qlink_tlv_chandef(9)
  • struct qlink_tlv_ie_set(9)
  • struct qlink_tlv_ext_ie(9)
  • struct qlink_tlv_iftype_data(9)
  • enum qlink_chan_stat(9)
  • struct qlink_chan_stats(9)
  • enum qlink_sta_info(9)
  • struct qlink_sta_info_rate(9)
  • struct qlink_sta_stats(9)
  • struct qlink_random_mac_addr(9)
  • struct qlink_wowlan_capab_data(9)
  • struct qlink_wowlan_support(9)
ngl the SEE ALSO section is longer than the actual page and that's genuinely so real of it πŸ’€

and that's the whole thing, bestie! 🧚 source file lives at ./drivers/net/wireless/quanten... (yes it's truncated like that in the footer, don't @ me), dated October 2026, and it's struct qlink_cmd_change_sta(9) all the way down. go forth and change some STAs πŸ’œβœ¨

πŸ“¦ where this page comes from