STRUCT IEEE802154_ADDR(9)
β¨ struct ieee802154_addr π
okay so bestie, welcome to the Kernel API Manual β this is the page for struct ieee802154_addr, aka the IEEE802.15.4 device address π. it's giving "tiny struct, big responsibilities" and honestly we're obsessed. let's get into it π
β¨ SYNOPSIS β¨
struct ieee802154_addr {
u8 mode;
__le16 pan_id;
union {
__le16 short_addr;
__le64 extended_addr;
};
};
look at her. neat, tidy, doing exactly what she needs to do π«Ά
πΈ Members πΈ
modeβ the address mode, straight out of the frame header π. it can be one of these three, no cap:IEEE802154_ADDR_NONEIEEE802154_ADDR_SHORTIEEE802154_ADDR_LONG
pan_idβ the PAN ID that this address belongs to π«. that's her home base.{unnamed_union}β it's anonymous, it has no name, it simply exists β¨ main character energy fr fr.short_addrβ the address, but only whenmodeisIEEE802154_ADDR_SHORT. little and cute πextended_addrβ the address whenmodeisIEEE802154_ADDR_LONG. big girl, 64 bits, ate π
ngl the union is the whole vibe check here β which member is "the" address depends entirely on whatmodesays, so readmodefirst before you go grabbing addresses. iykyk π₯
π¦ SEE ALSO π¦
the whole friend group, in Kernel file ./include/net/cfg802154.h:
enum wpan_phy_flags(9)struct ieee802154_coord_desc(9)struct ieee802154_pan_device(9)struct cfg802154_scan_request(9)struct cfg802154_beacon_request(9)struct cfg802154_mac_pkt(9)cfg802154_device_is_associated(9)cfg802154_device_is_parent(9)cfg802154_device_is_child(9)cfg802154_set_max_associations(9)cfg802154_get_free_short_addr(9)
mwah π that's the whole page!! this one lives under ./include/net in the kernel tree, dated October 2026, and yes β the page's own name is struct ieee802154_addr(9), so now you know it, slay πβ π§
π¦ 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