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


       vrb_read_min - read a minimum of data into a VRB




       #include <vrb.h>

       size_t vrb_read_min(vrb_p vrb, int fd, size_t maxsize, size_t minsize);


       vrb_read_min  reads  a  minimum amount of 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).  If there is insufficient space in the  buffer
       to read the minimum amount, then read(2) will not be called.


       vrb_p vrb
       specifies which virtual ring buffer.

       int fd
       specifies the open file descriptor to read from

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

       size_t minsize
       specifies the minimum length to read.


       If successful, the actual length of data read into the buffer is returned.  If the minimum
       amount of space was not available to read into, 0 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).


       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.


       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(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)