IBV_CREATE_AH(3) Libibverbs Programmer's Manual IBV_CREATE_AH(3)
NAME
ibv_create_ah, ibv_destroy_ah - create or destroy an address handle
(AH)
SYNOPSIS
#include <infiniband/verbs.h>
struct ibv_ah *ibv_create_ah(struct ibv_pd *pd,
struct ibv_ah_attr *attr);
int ibv_destroy_ah(struct ibv_ah *ah);
DESCRIPTION
ibv_create_ah() creates an address handle (AH) associated with the pro-
tection domain pd. The argument attr is an ibv_ah_attr struct, as de-
fined in <infiniband/verbs.h>.
struct ibv_ah_attr {
struct ibv_global_route grh; /* Global Routing Header (GRH) attributes */
uint16_t dlid; /* Destination LID */
uint8_t sl; /* Service Level */
uint8_t src_path_bits; /* Source path bits */
uint8_t static_rate; /* Maximum static rate */
uint8_t is_global; /* GRH attributes are valid */
uint8_t port_num; /* Physical port number */
};
struct ibv_global_route {
union ibv_gid dgid; /* Destination GID or MGID */
uint32_t flow_label; /* Flow label */
uint8_t sgid_index; /* Source GID index */
uint8_t hop_limit; /* Hop limit */
uint8_t traffic_class; /* Traffic class */
};
ibv_destroy_ah() destroys the AH ah.
RETURN VALUE
ibv_create_ah() returns a pointer to the created AH, or NULL if the re-
quest fails.
NOTES
If port flag IBV_QPF_GRH_REQUIRED is set then ibv_create_ah() must be
created with definition of 'struct ibv_ah_attr { .is_global = 1; .grh =
{...}; }'.
ibv_destroy_ah() returns 0 on success, or the value of errno on failure
(which indicates the failure reason).
SEE ALSO
ibv_alloc_pd(3), ibv_init_ah_from_wc(3), ibv_create_ah_from_wc(3)
AUTHORS
Dotan Barak <dotanba@gmail.com>
libibverbs 2006-10-31 IBV_CREATE_AH(3)
Generated by dwww version 1.14 on Sat Jun 13 11:29:09 CEST 2026.