.\" Extracted by src2man from /build/rpma-11eW7Q/rpma-1.3.0/src/include/librpma.h .\" Text automatically generated by txt2man .TH rpma_utils_get_ibv_context 3 "29 May 2023" "RPMA" "RPMA Programmer's Manual" .SH NAME \fBrpma_utils_get_ibv_context \fP- obtain an RDMA device context by IP address .SH SYNOPSIS .nf .fam C #include struct ibv_context; enum rpma_util_ibv_context_type { RPMA_UTIL_IBV_CONTEXT_LOCAL, RPMA_UTIL_IBV_CONTEXT_REMOTE }; int \fBrpma_utils_get_ibv_context\fP(const char *addr, enum rpma_util_ibv_context_type type, struct ibv_context **ibv_ctx_ptr); .fam T .fi .fam T .fi .SH DESCRIPTION \fBrpma_utils_get_ibv_context\fP() obtains an RDMA device context by the given IPv4/IPv6 address (either local or remote) using the TCP RDMA port space (RDMA_PS_TCP) - reliable, connection-oriented and message-based QP communication. Possible values of the 'type' argument: .IP \(bu 3 RPMA_UTIL_IBV_CONTEXT_LOCAL - lookup for a device based on the given local address .IP \(bu 3 RPMA_UTIL_IBV_CONTEXT_REMOTE - lookup for a device based on the given remote address .SH RETURN VALUE The \fBrpma_utils_get_ibv_context\fP() function returns 0 on success or a negative error code on failure. \fBrpma_utils_get_ibv_context\fP() does not set *ibv_ctx_ptr value on failure. .SH ERRORS \fBrpma_utils_get_ibv_context\fP() can fail with the following errors: .IP \(bu 3 RPMA_E_INVAL - addr or ibv_ctx_ptr is NULL or type is unknown .IP \(bu 3 RPMA_E_NOMEM - out of memory .IP \(bu 3 RPMA_E_PROVIDER - \fBrdma_getaddrinfo\fP(), \fBrdma_create_id\fP(), \fBrdma_bind_addr\fP() or \fBrdma_resolve_addr\fP() failed, the exact cause of the error can be read from the log .SH SEE ALSO \fBrpma_peer_new\fP(3), \fBrpma_utils_ibv_context_is_odp_capable\fP(3), \fBlibrpma\fP(7) and https://pmem.io/rpma/