---
name: "libnvmf_config_emit_add-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/libnvmf_config_emit_add-libnvme3"
---

# libnvmf\_config\_emit\_add-libnvme3(2)

Add a connection to a configuration emitter.

## NAME

libnvmf\_config\_emit\_add - Add a connection to a configuration emitter.

## SYNOPSIS

**int libnvmf\_config\_emit\_add** **(struct libnvmf\_config\_emitter \*emitter** *,* **bool is\_dc** *,* **const char \*transport** *,* **const char \*traddr** *,* **const char \*trsvcid** *,* **const char \*subsysnqn** *,* **const char \*host\_traddr** *,* **const char \*host\_iface** *,* **const char \*hostnqn** *,* **const char \*hostid** *,* **const struct libnvmf\_params \*params** *,* **const char \*hostsymname** *);*

## ARGUMENTS

- emitter

  Configuration emitter.

- is\_dc

  Discovery controller if true, I/O controller if false.

- transport

  Transport type. Required.

- traddr

  Transport address. Required. Written verbatim, even if a hostname; resolution happens at connect time, not here.

- trsvcid

  Transport service ID, or NULL.

- subsysnqn

  Subsystem NQN. Required unless *is\_dc* is true.

- host\_traddr

  Host transport address, or NULL.

- host\_iface

  Host interface, or NULL.

- hostnqn

  Host NQN, or NULL.

- hostid

  Host identifier, or NULL.

- params

  Connection parameters, or NULL.

- hostsymname

  Host symbolic name, or NULL.

## DESCRIPTION

The parameter set is copied by the emitter.

## RETURN

\* 0 on success. \* -EINVAL if a required parameter is missing or if *hostsymname* conflicts with an existing persona. \* -ENOMEM if memory allocation fails.
