| libnvme(9) | API Manual | libnvme(9) |
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.
| struct libnbft_hfi_info_tcp | July 2026 |