Provided by: librdmacm-dev_1.0.14.1-2_i386 bug

NAME

       rdma_getaddrinfo - Provides transport independent address translation.

SYNOPSIS

       #include <rdma/rdma_cma.h>

       int  rdma_getaddrinfo  (char *node, char *service, struct rdma_addrinfo
       *hints, struct rdma_addrinfo **res);

ARGUMENTS

       node        Optional, name, dotted-decimal IPv4, or IPv6 hex address to
                   resolve.

       service     Service name or port number of address.

       hints       Reference  to  an  rdma_addrinfo structure containing hints
                   about the type of service the caller supports.

       res         A pointer to a  linked  list  of  rdma_addrinfo  structures
                   containing response information.

DESCRIPTION

       Resolves   the   destination  node  and  service  address  and  returns
       information needed  to  establish  communication.   Provides  the  RDMA
       functional equivalent to getaddrinfo.

RETURN VALUE

       Returns  0  on success, or -1 on error.  If an error occurs, errno will
       be set to indicate the failure reason.

NOTES

       Either node or service must be provided.  If hints  are  provided,  the
       operation  will  be  controlled  by  hints.ai_flags.  If RAI_PASSIVE is
       specified, the call will resolve address information  for  use  on  the
       passive side of a connection.

rdma_addrinfo

       ai_flags    Hint  flags  that  control  the operation.  Supported flags
                   are:

       RAI_PASSIVE Indicates  that  the  results   will   be   used   on   the
                   passive/listening side of a connection.

       RAI_NUMERICHOST
                   If specified, then the node parameter, if provided, must be
                   a numerical network  address.   This  flag  suppresses  any
                   lengthy address resolution.

       RAI_NOROUTE If set, this flag suppresses any lengthy route resolution.

       ai_family   Address  family  for  the  source  and destination address.
                   Supported families are: AF_INET, AF_INET6, and AF_IB.

       ai_qp_type  Indicates the type  of  RDMA  QP  used  for  communication.
                   Supported  types  are:  IBV_UD  (unreliable  datagram)  and
                   IBV_RC (reliable connected).

       ai_port_space
                   RDMA port space in use.  Supported values are:  RDMA_PS_UDP
                   and RDMA_PS_TCP.

       ai_src_len  The length of the source address referenced by ai_src_addr.
                   This will be 0 if an appropriate source address  could  not
                   be discovered for a given destination.

       ai_dst_len  The   length  of  the  destination  address  referenced  by
                   ai_dst_addr.  This will be 0 if the  RAI_PASSIVE  flag  was
                   specified as part of the hints.

       ai_src_addr If provided, the address for the local RDMA device.

       ai_dst_addr If provided, the address for the destination RDMA device.

       ai_src_canonname
                   The canonical for the source.

       ai_dst_canonname
                   The canonical for the destination.

       ai_route_len
                   Size  of  the  routing  information  buffer  referenced  by
                   ai_route.  This will be 0 if the underlying transport  does
                   not require routing data, or none could be resolved.

       ai_route    Routing   information  for  RDMA  transports  that  require
                   routing data as  part  of  connection  establishment.   The
                   format  of  the  routing  data  depends  on  the underlying
                   transport.  If Infiniband  transports  are  used,  ai_route
                   will reference an array of struct ibv_path_data.

       ai_connect_len
                   Size  of  connection  information referenced by ai_connect.
                   This will be 0 if the underlying transport does not require
                   additional connection information.

       ai_connect  Data  exchanged  as  part  of  the connection establishment
                   process.  If provided, ai_connect data must be  transferred
                   as  private  data,  with  any  user  supplied  private data
                   following it.

       ai_next     Pointer to the next rdma_addrinfo structure  in  the  list.
                   Will be NULL if no more structures exist.

SEE ALSO

       rdma_create_id(3),        rdma_resolve_route(3),       rdma_connect(3),
       rdma_create_qp(3), rdma_bind_addr(3), rdma_create_ep(3)