libnvmf\_get\_owner\_from\_tid(9) libnvme API manual libnvmf\_get\_owner\_from\_tid(9)

# [NAME](#NAME)

libnvmf\_get\_owner\_from\_tid - Get the registry owner of a transport ID

# [SYNOPSIS](#SYNOPSIS)

**int libnvmf\_get\_owner\_from\_tid** **(struct libnvme\_global\_ctx \*ctx ,** **const struct libnvmf\_tid \*tid ,** **char \*\*owner );**

# [ARGUMENTS](#ARGUMENTS)

[ctx](#ctx)

Global context

[tid](#tid)

Transport ID identifying the connection to check

[owner](#owner)

Returned owner, NULL if no matching controller exists or it is unowned

# [DESCRIPTION](#DESCRIPTION)

Resolves the controller, if any, matching *tid* and reports its registry owner. Does not connect, disconnect, or otherwise modify controller state.

When a matching owned controller exists, *owner* is set to a newly allocated string that the caller must **free**. Otherwise, *owner* is set to NULL. A negative errno return indicates the lookup failed; it is never used to report that no owner exists.

See also: **libnvme\_set\_owner** (lib.h) to declare an orchestrator's own identity, and **libnvmf\_registry\_retrieve** (registry.h) to read a live controller's registry entry by device name rather than by TID.

# [RETURN](#RETURN)

0 on success (check *owner*), negative errno on failure.

libnvmf\_get\_owner\_from\_tid September 2026

---

Document: libnvmf_get_owner_from_tid-libnvme3(2) from nvme-cli 3.1-r1 (Chainguard OS)
Source: https://github.com/linux-nvme/nvme-cli
