Provided by: libvrb0-dev_0.5.1-5.1_amd64 bug

NAME

       vrb_read - read data into a VRB

LIBRARY

       -lvrb

SYNOPSIS

       #include <vrb.h>

       size_t vrb_read(vrb_p vrb, int fd, size_t size);

DESCRIPTION

       vrb_read reads data from a specified open file descriptor using read(2) into the specified
       virtual ring buffer until the specified maximum length has been read, the buffer is  full,
       or  end-of-file,  or  an  error  is  returned  (including EAGAIN or EWOULDBLOCK for a non-
       blocking descriptor).

ARGUMENTS

       vrb_p vrb
       specifies which virtual ring buffer.

       int fd
       specifies the open file descriptor to read from

       size_t size
       specifies the maximum length to read, or ~0 for unlimited.

RETURN VALUE

       size_t
       If successful, the actual length of data read into the buffer is returned.  If end-of-file
       occurs,  the  return  value  is  ~0  and errno is 0.  If an error occurs from read(2), the
       return value is ~0 and errno is set by read(2).  Note that this  is  a  different  way  of
       returning an end-of-file condition than read(2) uses.

ERRORS

       If an error is returned, then errno will have one of the following values:

       0      An  end-of-file  has  occurred.   Note that this is a different way of returning an
              end-of-file condition than read(2) uses.

       EINVAL An invalid virtual ring buffer pointer was specified.

SEE ALSO

       vrb(3), vrb_capacity(3),  vrb_data_len(3),  vrb_data_ptr(3),  vrb_destroy(3),  vrb_get(3),
       vrb_get_min(3),     vrb_give(3),     vrb_init(3),     vrb_init_opt(3),    vrb_is_empty(3),
       vrb_is_full(3),   vrb_is_not_empty(3),   vrb_is_not_full(3),   vrb_move(3),    vrb_new(3),
       vrb_new_opt(3),     vrb_put(3),     vrb_put_all(3),     vrb_read_min(3),    vrb_resize(3),
       vrb_space_len(3),    vrb_space_ptr(3),    vrb_take(3),    vrb_uninit(3),     vrb_write(3),
       vrb_write_min(3), read(2)