Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
RDMA_GETADDRINFO(3)	 Librdmacm Programmer's	Manual	   RDMA_GETADDRINFO(3)

       rdma_getaddrinfo	- Provides transport independent address translation.

       #include	<rdma/rdma_cma.h>

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

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

       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 con-
		   taining response information.

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

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

       Either node, service, or	hints must be provided.	  If  hints  are  pro-
       vided, the operation will be controlled by hints.ai_flags.  If RAI_PAS-
       SIVE is specified, the call will	resolve	address	information for	use on
       the  passive  side  of  a connection.  If node is provided, rdma_getad-
       drinfo will attempt to resolve the RDMA address,	route, and  connection
       data  to	the given node.	 The hints parameter, if provided, may be used
       to control the resulting	output as indicated below.   If	 node  is  not
       given, rdma_getaddrinfo will attempt to resolve the RDMA	addressing in-
       formation  based	 on  the  hints.ai_src_addr,   hints.ai_dst_addr,   or

       ai_flags	   Hint	 flags	that  control  the operation.  Supported flags

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

		   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.

       RAI_FAMILY  If  set,  the  ai_family setting should be used as an input
		   hint	for interpretting the node parameter.

       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.  Sup-
		   ported types	are: IBV_UD (unreliable	datagram)  and	IBV_RC
		   (reliable connected).

		   RDMA	port space in use.  Supported values are: RDMA_PS_UDP,

       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.

		   The canonical for the source.

		   The canonical for the destination.

		   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	 rout-
		   ing	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 on output, if routing data
		   is  available.   Routing paths may be restricted by setting
		   desired routing data	fields on input	 to  rdma_getaddrinfo.
		   For	Infiniband,  hints.ai_route  may reference an array of
		   struct ibv_path_record or struct ibv_path_data on input.

		   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  fol-
		   lowing it.

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

       rdma_create_id(3),  rdma_resolve_route(3),  rdma_connect(3),  rdma_cre-
       ate_qp(3), rdma_bind_addr(3), rdma_create_ep(3)

librdmacm			  2010-07-19		   RDMA_GETADDRINFO(3)


Want to link to this manual page? Use this URL:

home | help