umad_set_grh

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
UMAD_SET_GRH(3)		  OpenIB Programmer´s Manual	      UMAD_SET_GRH(3)



NAME
       umad_set_grh - set GRH fields within umad buffer using host ordering

SYNOPSIS
       #include <infiniband/umad.h>

       int umad_set_grh(void *umad, void *mad_addr);

DESCRIPTION
       umad_set_grh() sets the GRH fields (grh_present, gid, hop_limit, traf-
       fic_class, flow_label) within the specified umad buffer based  on  the
       mad_addr	 supplied. The provided mad_addr fields are expected to be in
       host order.  If the mad_addr pointer supplied is NULL, no GRH is	 set.
       The  argument  mad_addr	is  a  pointer to an ib_mad_addr_t struct, as
       specified in <infiniband/umad.h>.  The argument umad is a  pointer  to
       an ib_user_mad_t struct, as specified in <infiniband/umad.h>.

       typedef struct ib_mad_addr {
	       uint32_t qpn;
	       uint32_t qkey;
	       uint16_t lid;
	       uint8_t	sl;
	       uint8_t	path_bits;
	       uint8_t	grh_present;
	       uint8_t	gid_index;
	       uint8_t	hop_limit;
	       uint8_t	traffic_class;
	       uint8_t	gid[16];
	       uint32_t flow_label;
       } ib_mad_addr_t;

       typedef struct ib_user_mad {
	       uint32_t agent_id;
	       uint32_t status;
	       uint32_t timeout_ms;
	       uint32_t retries;
	       uint32_t length;
	       ib_mad_addr_t addr;
	       uint8_t	data[0];
       } ib_user_mad_t;

RETURN VALUE
       umad_set_grh()  returns	0 on success, and a negative value on errors.
       Currently, there are no errors indicated.

SEE ALSO
       umad_set_grh_net(3)

AUTHOR
       Hal Rosenstock <halr@voltaire.com>



OpenIB				 May 24, 2007		      UMAD_SET_GRH(3)