---
name: "nbft_discovery"
section: "2"
platform: "linux"
package: "libnvme-dev"
version: "1.13-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/nbft_discovery"
---

# nbft\_discovery(2)

Discovery Descriptor (Figure 24)

## NAME

struct nbft\_discovery - Discovery Descriptor (Figure 24)

## SYNOPSIS

struct nbft\_discovery {\
     **\_\_u8 structure\_id;**\
     **\_\_u8 flags;**\
     **\_\_u8 index;**\
     **\_\_u8 hfi\_index;**\
     **\_\_u8 sec\_index;**\
     **\_\_u8 reserved1;**\
     **struct nbft\_heap\_obj discovery\_ctrl\_addr\_obj;**\
     **struct nbft\_heap\_obj discovery\_ctrl\_nqn\_obj;**\
     **\_\_u8 reserved2\[14\];**\
 };\

## Members

- structure\_id

  Structure ID: This field shall be set to 6h (i.e., Discovery Descriptor; #NBFT\_DESC\_DISCOVERY).

- flags

  Discovery Descriptor Flags, see *enum nbft\_discovery\_flags*.

- index

  Discovery Descriptor Index: This field indicates the number of this Discovery Descriptor in the Discovery Descriptor List.

- hfi\_index

  HFI Descriptor Index: This field indicates the value of the HFI Descriptor Index field of the HFI Descriptor associated with this Discovery Descriptor. If multiple HFIs share a common Discovery controller, there shall be multiple Discovery Descriptor entries with one per HFI.

- sec\_index

  Security Profile Descriptor Index: This field indicates the value of the Security Profile Descriptor Index field of the Security Descriptor associated with this Discovery Descriptor.

- reserved1

  Reserved.

- discovery\_ctrl\_addr\_obj

  Discovery Controller Address Heap Object Reference: This field indicates the location and size of a heap object containing a URI which indicates an NVMe Discovery controller associated with this Discovery Descriptor. If this field is cleared to 0h, then no URI is specified.

- discovery\_ctrl\_nqn\_obj

  Discovery Controller NQN Heap Object Reference: If set to a non-zero value, this field indicates the location and size of a heap object containing an NVMe Discovery controller NQN. If the NVMe Discovery controller referenced by this record requires secure authentication with a well known Subsystem NQN, this field indicates the unique NQN for that NVMe Discovery controller. This record is involved formatted as an NQN string. If this field is cleared to 0h, then this field is reserved and the OS shall use the well known discovery NQN for this record.

- reserved2

  Reserved.
