Man Linux: Main Page and Category List

NAME

       vrb_put_all - put all data into a VRB

LIBRARY

       -lvrb

SYNOPSIS

       #include <vrb.h>

       int vrb_put_all(vrb_p vrb, char *source, size_t size);

DESCRIPTION

       vrb_put_all  puts  caller provided data into a virtual ring buffer only
       if all the data will fit.

ARGUMENTS

       vrb_p vrb
       specifies which virtual ring buffer.

       char *source
       specifies the location where to copy the data from.

       size_t size
       specifies the length of data provided by the caller.

RETURN VALUE

       int
       If the data fits  and  is  copied,  0  is  returned,  otherwise  -1  is
       returned.

ERRORS

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

       EINVAL An invalid virtual ring buffer pointer was specified.

       ENOSPC The virtual ring buffer does not have enough space to  hold  all
              of the data.

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