rpma_mr_remote_from_descriptor(3)

rpma_mr_remote_from_descriptor3

Create a memory region from a descriptor

Usage

      #include <librpma.h>
      struct rpma_mr_remote;
      int rpma_mr_remote_from_descriptor(const void *desc, size_t desc_size,
                      struct rpma_mr_remote **mr_ptr);

Overview

Create a remote memory region's structure based on the provided descriptor with a network-transferable description of the memory region local to the remote peer.

Security warning

An attacker might modify the serialized remote memory registration configuration while it is transferred via an unsecured connection (e.g. rdma_cm private data), which might cause data corruption when writing to a different location. Users should avoid using rpma_conn_get_private_data(3) and rpma_conn_req_get_private_data(3) API calls and they should utilize TLS/SSL connections to transfer all configuration data between peers instead.

Return value

The rpma_mr_remote_from_descriptor() function returns 0 on success or a negative error code on failure. rpma_mr_remote_from_descriptor() does not set *mr_ptr value on failure.

Errors

rpma_mr_remote_from_descriptor() can fail with the following errors:

•

RPMA_E_INVAL - desc or mr_ptr is NULL

•

RPMA_E_INVAL - incompatible descriptor size

•

RPMA_E_NOSUPP - deserialized information does not represent a valid memory region

•

RPMA_E_NOMEM - out of memory

Releases

2 releases since Debian 12 (Bookworm); the text changed 1 time.

  1. 12
  2. 13

From librpma-dev 1.3.0-2+b3 in Debian 13 (Trixie). Parsed by carta from the page's man source.