---
name: "libnbft_hfi_info_tcp-libnvme3"
section: "2"
platform: "linux"
package: "nvme-cli"
version: "3.2-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/libnbft_hfi_info_tcp-libnvme3"
---

# libnbft\_hfi\_info\_tcp-libnvme3(2)

HFI Transport Info Descriptor - NVMe/TCP

## NAME

struct libnbft\_hfi\_info\_tcp - HFI Transport Info Descriptor - NVMe/TCP

## SYNOPSIS

struct libnbft\_hfi\_info\_tcp {\
     **\_\_u32 pci\_sbdf;**\
     **\_\_u8 mac\_addr\[6\];**\
     **\_\_u16 vlan;**\
     **\_\_u8 ip\_origin;**\
     **char ipaddr\[40\];**\
     **\_\_u8 subnet\_mask\_prefix;**\
     **char gateway\_ipaddr\[40\];**\
     **\_\_u16 route\_metric;**\
     **char primary\_dns\_ipaddr\[40\];**\
     **char secondary\_dns\_ipaddr\[40\];**\
     **char dhcp\_server\_ipaddr\[40\];**\
     **char \*host\_name;**\
     **\_\_u8 flags;**\
     **\_\_u8 pcie\_seg\_num;**\
     **\_\_u32 dhcp\_iaid;**\
     **\_\_u8 dhcp\_duid\[130\];**\
     **\_\_u8 dhcp\_duid\_len;**\
 };\

## Members

- pci\_sbdf

  PCI Express Routing ID for the HFI Transport Function.

- mac\_addr

  MAC Address: The MAC address of this HFI, in EUI-48TM format.

- vlan

  The VLAN identifier if the VLAN is associated with this HFI, as defined in IEEE 802.1q-2018 or zeroes if no VLAN is associated with this HFI.

- ip\_origin

  The source of Ethernet L3 configuration information used by the driver or 0 if not used.

- ipaddr

  The IPv4 or IPv6 address of this HFI.

- subnet\_mask\_prefix

  The IPv4 or IPv6 subnet mask in CIDR routing prefix notation.

- gateway\_ipaddr

  The IPv4 or IPv6 address of the IP gateway for this HFI or zeroes if no IP gateway is specified.

- route\_metric

  The cost value for the route indicated by this HFI.

- primary\_dns\_ipaddr

  The IPv4 or IPv6 address of the Primary DNS server for this HFI.

- secondary\_dns\_ipaddr

  The IPv4 or IPv6 address of the Secondary DNS server for this HFI.

- dhcp\_server\_ipaddr

  The IPv4 or IPv6 address of the DHCP server used to assign this HFI address.

- host\_name

  The Host Name string.

- flags

  HFI Transport Flags bitmask, see *enum nbft\_hfi\_info\_tcp\_flags*.

- pcie\_seg\_num

  The PCIe Segment Number for the HFI Transport Function when the PCI Express Link is in Flit mode. Zero if not in Flit mode, not supported, or the NBFT data originates from a pre-NBFT rev. 1.1 driver.

- dhcp\_iaid

  The DHCP Identity Association Identifier (IAID) as defined in RFC 4361. The IAID is a 32-bit value that uniquely identifies the client's network interface for DHCP purposes. NBFT rev. 1.1+; meaningful when *dhcp\_duid\_len* is non-zero.

- dhcp\_duid

  The raw DHCP Unique Identifier (DUID) as defined in RFC 8415 section 11 (NBFT rev. 1.1+). This is the complete DUID including its leading 2-byte type code followed by up to 128 bytes of type-specific identifier data. Known DUID type codes are: 1 (DUID-LLT, link-layer address plus time), 2 (DUID-EN, vendor-assigned based on enterprise number), 3 (DUID-LL, link-layer address), 4 (DUID-UUID, universally unique identifier). Multi-byte fields within the DUID are stored in little-endian byte order as specified by the NVMe Boot Specification. The consumer is responsible for parsing the type code and the type-specific data. This is a local copy of the data from the NBFT heap. This array is zero-filled when the DUID is not present; check *dhcp\_duid\_len*.

- dhcp\_duid\_len

  The number of valid bytes in *dhcp\_duid*, ranging from 3 (minimum: 2-byte type code plus at least 1 byte of data) to 130 (maximum per RFC 8415). NBFT rev. 1.1+. A value of zero indicates that no DUID is present and both *dhcp\_duid* and *dhcp\_iaid* should be ignored.
