| .\" Licensed under the OpenIB.org BSD license (FreeBSD Variant) - See COPYING.md |
| .TH "RDMA_RESOLVE_ADDR" 3 "2007-10-31" "librdmacm" "Librdmacm Programmer's Manual" librdmacm |
| .SH NAME |
| rdma_resolve_addr \- Resolve destination and optional source addresses. |
| .SH SYNOPSIS |
| .B "#include <rdma/rdma_cma.h>" |
| .P |
| .B "int" rdma_resolve_addr |
| .BI "(struct rdma_cm_id *" id "," |
| .BI "struct sockaddr *" src_addr "," |
| .BI "struct sockaddr *" dst_addr "," |
| .BI "int " timeout_ms ");" |
| .SH ARGUMENTS |
| .IP "id" 12 |
| RDMA identifier. |
| .IP "src_addr" 12 |
| Source address information. This parameter may be NULL. |
| .IP "dst_addr" 12 |
| Destination address information. |
| .IP "timeout_ms" 12 |
| Time to wait for resolution to complete. |
| .SH "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. |
| .SH "RETURN VALUE" |
| Returns 0 on success, or -1 on error. If an error occurs, errno will be |
| set to indicate the failure reason. |
| .SH "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. |
| .SH "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. |
| .SH "SEE ALSO" |
| rdma_create_id(3), rdma_resolve_route(3), rdma_connect(3), rdma_create_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) |