OS Manuals

libnvmf_insert_tls_key_compat-libnvme3(2)

libnvmf_insert_tls_key_compat - Derive and insert a TLS PSK

libnvmf_insert_tls_key_compat(9) libnvme API manual libnvmf_insert_tls_key_compat(9)

libnvmf_insert_tls_key_compat - Derive and insert a TLS PSK

int libnvmf_insert_tls_key_compat (struct libnvme_global_ctx *ctx , const char *keyring , const char *key_type , const char *hostnqn , const char *subsysnqn , int version , enum libnvmf_hmac_alg hmac , unsigned char *configured_key , int key_len , long *key );

struct libnvme_global_ctx object
Keyring to use
Type of the resulting key
Host NVMe Qualified Name
Subsystem NVMe Qualified Name
TLS PSK identity version to use
HMAC algorithm
Configured PSK to derive the retained PSK from
Length of configured_key
Key serial to return

Derives a retained PSK from configured_key and, from that, the TLS PSK and its identity as specified in the NVMe TCP Transport Specification 1.3, section 3.6.1.3. Stores the TLS PSK as type key_type under that identity in the keyring specified by keyring. This function differs from libnvmf_insert_tls_key_versioned in that it uses the original implementation for HKDF Expand-Label which does not prefix the 'info' and 'label' strings with the length.

version selects the identity version: 0 is obsolete and defined in the NVMe TCP Transport Specification 1.0, 1 is TLS 1.3 with the PSK digest in the identity.

0 on success, negative error code otherwise.

libnvmf_insert_tls_key_compat October 2026

nvme-cli 3.2-r0 · os · ingested 2026-10-31