NAME
libnvmf_tid_parse - Allocate a TID from a semicolon-separated key=value string.
SYNOPSIS
int libnvmf_tid_parse (struct libnvme_global_ctx *ctx , const char *str , struct libnvmf_tid **out );
ARGUMENTS
- ctx
-
Global context used only for logging the diagnostics below.
- str
-
Input string, e.g. "transport=tcp;traddr=1.2.3.4;trsvcid=8009".
- out
-
The allocated TID on success; NULL on error.
DESCRIPTION
Recognized keys are the "nvme connect" option names: transport, traddr, trsvcid, nqn, host-traddr, host-iface, hostnqn, hostid. (The "nqn", "host-traddr", and "host-iface" string keys map onto the struct's subsysnqn, host_traddr, and host_iface fields, whose names follow the C-identifier convention.) Unknown keys, bare keys (no '='), and empty values are logged at WARN level and skipped. Whitespace around keys and values is trimmed. Like libnvmf_tid_from_fields, a traddr/host-traddr that is not numeric on an IP transport fails the whole parse.
RETURN
0 on success (*out is the allocated TID); -EINVAL if ctx, out or str is NULL, or a traddr/host-traddr is not numeric on an IP transport; -ENOMEM on allocation failure.