trusty (3) umad_recv.3.gz

Provided by: libibumad-dev_1.3.8-1ubuntu1_amd64 bug

NAME

       umad_recv - receive umad

SYNOPSIS

       #include <infiniband/umad.h>

       int umad_recv(int portid, void *umad, int *length, int timeout_ms);

DESCRIPTION

       umad_recv()  waits  up  to timeout_ms milliseconds for a packet to be received from the port specified by
       portid.  The packet is copied to the umad buffer if there is sufficient room and the received  length  is
       indicated.   If the buffer is not large enough, the size of the umad buffer needed is returned in length.
       A negative timeout_ms makes the function block until a packet is received. A timeout_ms parameter of zero
       indicates a non blocking read.

       Note length is a pointer to the length of the data portion of the umad buffer.  This means that umad must
       point to a buffer at least umad_size() + *length bytes long.

       Note also that *length must be >= 256 bytes.

RETURN VALUE

       umad_recv() returns non negative receiving agentid on success, and a negative value on error as follows:
        -EINVAL      invalid port handle or agentid or *length is less than the minimum supported
        -EIO         receive operation failed
        -EWOULDBLOCK non blocking read can't be fulfilled

SEE ALSO

       umad_poll(3)

AUTHOR

       Hal Rosenstock <halr@voltaire.com>