libnvme(9)

πŸ“¦ version 3.2, in arch rolling

πŸ’– NAME πŸ’–

okay so bestie, gather round, because this is libnvme(9) β€” the API manual, and today's main character is struct nbft_hfi_info_ext, aka the HFI Transport Info Extended Information Descriptor (Figure 15, since rev. 1.1). yes that's a whole mouthful. yes it's iconic. πŸŽ€


✨ SYNOPSIS ✨

here's the vibe, literally copy-paste exact:

struct nbft_hfi_info_ext {
    __u8 structure_id;
    __u8 version;
    __le16 hfi_trinfo_index;
    __le32 flags;
    struct nbft_heap_obj dhcp_iaid_obj;
    struct nbft_heap_obj dhcp_duid_obj;
 };

that's the whole squad right there. six members, all of them doing their little jobs. slay. πŸ’…


πŸ¦‹ Members πŸ¦‹

  • structure_id β€” Structure ID, bestie: this field shall be set to Ah (i.e., HFI Ext Info; #NBFT_DESC_HFI_EXT_INFO). no cap, it's giving "i have one job and i do it." πŸ‘‘
  • version β€” Version: this field shall be set to 1h. that's it. that's the whole assignment. ✨
  • hfi_trinfo_index β€” HFI Transport Info Descriptor Index: this field shall be set to the same value as the HFI Transport Info Descriptor Index field of the referencing HFI Transport Info Descriptor. so basically it has to match its friend's fit β€” matching outfits, main character + bestie energy 🫢
  • flags β€” Flags, see enum nbft_hfi_info_ext_flags. (go look at the enum, iykyk 🌸)
  • dhcp_iaid_obj β€” IPv4 and IPv6 DHCP Client Identifier Heap IAID Object Reference: if the DHCP Client Identifier bit is set to 1h, then this heap object references the Identity Association Identifier (IAID). this identifier shall be constructed conformant to RFC4361. and lowkey important: the IAID is stored in little endian format within the heap object. πŸ”₯
  • dhcp_duid_obj β€” IPv4 and IPv6 DHCP Client Identifier Heap DUID Object Reference: if the DHCP Client Identifier bit is set to 1h, then this heap object references the DHCP Unique Identifier (DUID). this identifier shall be constructed conformant to RFC4361 too (twins!). the DUID is stored in little endian format within the heap object. 🧚
real talk though bestie: those RFC4361 rules and the little endian storage are shall-statements, so don't get creative with them, okay? respect the spec. πŸ’€

and that's the whole page, bestie β€” no crumbs left. this masterpiece of a manpage is from the libnvme(9) API Manual (that's the source/version, mwah πŸ’œ), dated October 2026, filed right under struct nbft_hfi_info_ext. periodt. 🌈⭐

πŸ“¦ where this page comes from