LC_CHANNEL_OTI_PEEK(3)

NAME
lc_channel_oti_peek - peek at OTI header

LIBRARY
Librecast library (liblibrecast, -llibrecast)

SYNOPSIS
#include <librecast/net.h>

int lc_channel_oti_peek(lc_channel_t *chan, rq_oti_t *oti, rq_scheme_t *scheme);

Compile and link with -llibrecast.

DESCRIPTION
The lc_channel_oti_peek() function peeks at the OTI header (RaptorQ FEC Object Transmission Information header - see RFC 6330) in the next packet of the socket bound to channel chan and sets oti and scheme accordingly.

RETURN VALUE
lc_channel_oti_peek() returns zero on success. On error, -1 is returned, and errno is set to indicate the error.

ERRORS

EBADMSG
    The header is malformed, or T does not match the expected value for chan.

errno can also be set to any of the errors returned by lc_socket_recv(3)

SEE ALSO
lc_channel_new(3), lc_channel_close(3), lc_channel_recv(3), lc_channel_coding_set(3), lc_socket_recv(3) rq_pid2sbn(3), rq_pid2esi(3), rq_pidset(3), rq_pidsetsbn(3), rq_pidsetesi(3), lcrq(7)