rdma_resolve_addr - Resolve destination and optional source addresses.
#include <rdma/rdma_cma.h> int rdma_resolve_addr (struct rdma_cm_id *id, struct sockaddr *src_addr, struct sockaddr *dst_addr, int timeout_ms);
Librdmacm Programmer's Manual RDMA_RESOLVE_ADDR(3)
NAME
rdma_resolve_addr - Resolve destination and optional source addresses.
SYNOPSIS
#include <rdma/rdma_cma.h>
int rdma_resolve_addr (struct rdma_cm_id *id, struct sockaddr
*src_addr, struct sockaddr *dst_addr, int timeout_ms);
ARGUMENTS
id RDMA identifier.
src_addr Source address information. This parameter may be NULL.
dst_addr Destination address information.
timeout_ms Time to wait for resolution to complete.
DESCRIPTION
Resolve destination and optional source addresses from IP addresses to
an RDMA address. If successful, the specified rdma_cm_id will be bound
to a local device.
RETURN VALUE
Returns 0 on success, or -1 on error. If an error occurs, errno will
be set to indicate the failure reason.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+-----------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------------+
|Availability | network/open-fabrics |
+---------------+-----------------------+
|Stability | Pass-through volatile |
+---------------+-----------------------+
NOTES
This call is used to map a given destination IP address to a usable
RDMA address. The IP to RDMA address mapping is done using the local
routing tables, or via ARP. If a source address is given, the
rdma_cm_id is bound to that address, the same as if rdma_bind_addr were
called. If no source address is given, and the rdma_cm_id has not yet
been bound to a device, then the rdma_cm_id will be bound to a source
address based on the local routing tables. After this call, the
rdma_cm_id will be bound to an RDMA device. This call is typically
made from the active side of a connection before calling
rdma_resolve_route and rdma_connect.
Source code for open source software components in Oracle Solaris can
be found at https://www.oracle.com/downloads/opensource/solaris-source-
code-downloads.html.
This software was built from source available at
https://github.com/oracle/solaris-userland. The original community
source was downloaded from ['https://www.openfabrics.org/down-
loads/ibutils/ibutils-1.5.7-0.2.gbd7e502.tar.gz', 'https://www.openfab-
rics.org/downloads/libibverbs/libibverbs-1.1.8.tar.gz',
'https://www.openfabrics.org/downloads/libmlx4/libmlx4-1.0.6.tar.gz',
'https://www.openfabrics.org/downloads/libsdp/lib-
sdp-1.1.108-0.15.gd7fdb72.tar.gz', 'https://www.openfabrics.org/down-
loads/management/infiniband-diags-1.6.5.tar.gz', 'https://www.openfab-
rics.org/downloads/management/libibmad-1.3.12.tar.gz',
'https://www.openfabrics.org/downloads/management/libibu-
mad-1.3.10.2.tar.gz', 'https://www.openfabrics.org/downloads/manage-
ment/opensm-3.3.19.tar.gz', 'https://www.openfabrics.org/down-
loads/perftest/perftest-1.3.0-0.42.gf350d3d.tar.gz', 'https://www.open-
fabrics.org/downloads/qperf/qperf-0.4.9.tar.gz', 'https://www.openfab-
rics.org/downloads/rdmacm/librdmacm-1.0.21.tar.gz', 'https://www.open-
fabrics.org/downloads/rds-tools/rds-tools-2.0.4.tar.gz'].
Further information about this software can be found on the open source
community website at http://www.openfabrics.org/.
INFINIBAND SPECIFIC
This call maps the destination and, if given, source IP addresses to
GIDs. In order to perform the mapping, IPoIB must be running on both
the local and remote nodes.
SEE ALSO
rdma_create_id(3), rdma_resolve_route(3), rdma_connect(3), rdma_cre-
ate_qp(3), rdma_get_cm_event(3), rdma_bind_addr(3),
rdma_get_src_port(3), rdma_get_dst_port(3), rdma_get_local_addr(3),
rdma_get_peer_addr(3)
librdmacm 2007-10-31 RDMA_RESOLVE_ADDR(3)