rpma_conn_req_connect - initiate processing the connection request
#include <librpma.h>
struct rpma_conn_req;
struct rpma_conn_private_data;
struct rpma_conn;
int rpma_conn_req_connect(struct rpma_conn_req **req_ptr,
const struct rpma_conn_private_data *pdata,
struct rpma_conn **conn_ptr);
rpma_conn_req_connect() initiates processing the connection requests both incoming and outgoing. The end of processing is signalled by the RPMA_CONN_ESTABLISHED event via rpma_conn_next_event().
The rpma_conn_req_connect() function returns 0 on success or a negative error code on failure. On success, the newly created connection object is stored in *conn_ptr whereas *req_ptr is consumed and set to NULL. On failure, rpma_conn_req_connect() does not set *conn_ptr whereas *req_ptr is consumed and set to NULL.
rpma_conn_req_connect() can fail with the following errors:
RPMA_E_INVAL - req_ptr, *req_ptr or conn_ptr is NULL
RPMA_E_INVAL - pdata is not NULL whereas pdata->len == 0
RPMA_E_NOMEM - out of memory
RPMA_E_PROVIDER - initiating a connection request failed (active side only)
RPMA_E_PROVIDER - accepting the connection request failed (passive side only)
RPMA_E_PROVIDER - freeing a communication event failed (passive side only)
rpma_conn_apply_remote_peer_cfg(3), rpma_conn_delete(3), rpma_conn_disconnect(3), rpma_conn_get_completion_fd(3), rpma_conn_get_event_fd(3), rpma_conn_get_private_data(3), rpma_conn_completion_get(3), rpma_conn_next_event(3), rpma_conn_completion_wait(3), rpma_conn_req_new(3), rpma_ep_next_conn_req(3), rpma_flush(3), rpma_read(3), rpma_recv(3), rpma_send(3), rpma_write(3), rpma_write_atomic(3), librpma(7) and https://pmem.io/rpma/
The contents of this web site and the associated GitHub repositories are BSD-licensed open source.