librpma API version 1.3.0

librpma.7 rpma_atomic_write.3 rpma_conn_apply_remote_peer_cfg.3 rpma_conn_cfg_delete.3 rpma_conn_cfg_get_compl_channel.3 rpma_conn_cfg_get_cq_size.3 rpma_conn_cfg_get_rcq_size.3 rpma_conn_cfg_get_rq_size.3 rpma_conn_cfg_get_sq_size.3 rpma_conn_cfg_get_srq.3 rpma_conn_cfg_get_timeout.3 rpma_conn_cfg_new.3 rpma_conn_cfg_set_compl_channel.3 rpma_conn_cfg_set_cq_size.3 rpma_conn_cfg_set_rcq_size.3 rpma_conn_cfg_set_rq_size.3 rpma_conn_cfg_set_sq_size.3 rpma_conn_cfg_set_srq.3 rpma_conn_cfg_set_timeout.3 rpma_conn_delete.3 rpma_conn_disconnect.3 rpma_conn_get_compl_fd.3 rpma_conn_get_cq.3 rpma_conn_get_event_fd.3 rpma_conn_get_private_data.3 rpma_conn_get_qp_num.3 rpma_conn_get_rcq.3 rpma_conn_next_event.3 rpma_conn_req_connect.3 rpma_conn_req_delete.3 rpma_conn_req_get_private_data.3 rpma_conn_req_new.3 rpma_conn_req_recv.3 rpma_conn_wait.3 rpma_cq_get_fd.3 rpma_cq_get_wc.3 rpma_cq_wait.3 rpma_ep_get_fd.3 rpma_ep_listen.3 rpma_ep_next_conn_req.3 rpma_ep_shutdown.3 rpma_err_2str.3 rpma_flush.3 rpma_log_get_threshold.3 rpma_log_set_function.3 rpma_log_set_threshold.3 rpma_mr_advise.3 rpma_mr_dereg.3 rpma_mr_get_descriptor.3 rpma_mr_get_descriptor_size.3 rpma_mr_get_ptr.3 rpma_mr_get_size.3 rpma_mr_reg.3 rpma_mr_remote_delete.3 rpma_mr_remote_from_descriptor.3 rpma_mr_remote_get_flush_type.3 rpma_mr_remote_get_size.3 rpma_peer_cfg_delete.3 rpma_peer_cfg_from_descriptor.3 rpma_peer_cfg_get_descriptor.3 rpma_peer_cfg_get_descriptor_size.3 rpma_peer_cfg_get_direct_write_to_pmem.3 rpma_peer_cfg_new.3 rpma_peer_cfg_set_direct_write_to_pmem.3 rpma_peer_delete.3 rpma_peer_new.3 rpma_read.3 rpma_recv.3 rpma_send.3 rpma_send_with_imm.3 rpma_srq_cfg_delete.3 rpma_srq_cfg_get_rcq_size.3 rpma_srq_cfg_get_rq_size.3 rpma_srq_cfg_new.3 rpma_srq_cfg_set_rcq_size.3 rpma_srq_cfg_set_rq_size.3 rpma_srq_delete.3 rpma_srq_get_rcq.3 rpma_srq_new.3 rpma_srq_recv.3 rpma_utils_conn_event_2str.3 rpma_utils_get_ibv_context.3 rpma_utils_ibv_context_is_odp_capable.3 rpma_write.3 rpma_write_with_imm.3

NAME

rpma_conn_get_private_data - get a pointer to the connection's private data

SYNOPSIS

      #include <librpma.h>

      struct rpma_conn;
      struct rpma_conn_private_data;
      int rpma_conn_get_private_data(const struct rpma_conn *conn,
                      struct rpma_conn_private_data *pdata);

DESCRIPTION

rpma_conn_get_private_data() obtains the pointer to the private data given by the other side of the connection.

SECURITY WARNING

The connection's private data is insecure. An attacker might modify all data transferred via the rdma_cm private data. 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_conn_get_private_data() function returns 0 on success or a negative error code on failure. rpma_conn_get_private_data() does not set *pdata value on failure.

ERRORS

rpma_conn_get_private_data() can fail with the following error:

  • RPMA_E_INVAL - conn or pdata is NULL

SEE ALSO

rpma_conn_req_connect(3), librpma(7) and https://pmem.io/rpma/

The contents of this web site and the associated GitHub repositories are BSD-licensed open source.