STRUCT BRCMF_PMKSA_V2(9)
π struct brcmf_pmksa_v2 β PMK Security Association π
Okay bestie, so this page is from the Kernel API Manual, and it's all about struct brcmf_pmksa_v2(9). It's giving "tiny little struct that holds your PMK Security Association" energy, and honestly? Iconic. Let's get into it. π
β¨ SYNOPSIS β¨
struct brcmf_pmksa_v2 {
__le16 length;
u8 bssid[ETH_ALEN];
u8 pmkid[WLAN_PMKID_LEN];
u8 pmk[WLAN_PMK_LEN_SUITE_B_192];
__le16 pmk_len;
struct brcmf_ssid8_le ssid;
u16 fils_cache_id;
};
Like, that's the whole struct. No cap. Now let's meet the members one by one because they all ate. π
πΈ Members πΈ
lengthβ bestie, this is literally just the length of the structure. That's it. That's the whole gig. β¨bssidβ the AP's BSSID. The access point's little name tag, basically. π¦pmkidβ the PMK ID. Yes queen, we love an identifier. πpmkβ the PMK material used for FILS key derivation. It's the actual key-ish good stuff, lowkey the main character here. π₯pmk_lenβ the length of the PMK data. We're keeping track, we're being responsible. πssidβ the AP's SSID. So the AP's actual network name, as opposed to its BSSID name tag up above. Don't mix them up, iykyk. πfils_cache_idβ the FILS cache identifier. It's giving "cache but make it FILS." β
π¦ SEE ALSO π¦
First off, the kernel file this whole thing lives in:
./drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil_types.h
And then we have, like, the entire friend group. Obsessed with how long this list is, fr fr:
struct brcmf_wsec_pmk_le(9)struct brcmf_wsec_sae_pwd_le(9)struct brcmf_fil_wowl_pattern_le(9)struct brcmf_fil_country_le(9)struct brcmf_rev_info_le(9)struct brcmf_wlc_version_le(9)struct brcmf_assoclist_le(9)struct brcmf_rssi_be(9)struct brcmf_wowl_wakeind_le(9)struct brcmf_pmksa(9)struct brcmf_pmksa_v3(9)struct brcmf_pmk_list_le(9)struct brcmf_pmk_list_v2_le(9)struct brcmf_pmk_op_v3_le(9)struct brcmf_pno_param_le(9)struct brcmf_pno_config_le(9)struct brcmf_pno_net_param_le(9)struct brcmf_pno_net_info_le(9)struct brcmf_pno_scanresults_le(9)struct brcmf_pno_macaddr_le(9)struct brcmf_dload_data_le(9)struct brcmf_pno_bssid_le(9)struct brcmf_pktcnt_le(9)struct brcmf_gtk_keyinfo_le(9)struct brcmf_gscan_bucket_config(9)enum brcmf_gscan_cfg_flags(9)struct brcmf_gscan_config(9)struct brcmf_mkeep_alive_pkt_le(9)
Note the pattern, bestie β half of these end in _le because they're little-endian structs. It's not a typo, it's a lifestyle. π
And that's the whole page!! π«Ά Source and version vibes come from ./drivers/net/wireless/broadco... and the date on this one is October 2026, so yeah, it's a whole struct brcmf_pmksa_v2(9) situation, and you now know it inside and out. Slay, go forth, understand your PMK security associations. πβ¨π
π¦ 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