NAME
zip_source_buffer_fragment,
  
zip_source_buffer_fragment_create —
  
create zip data source from multiple buffer
LIBRARY
libzip (-lzip)
SYNOPSIS
#include <zip.h>
zip_source_t *
zip_source_buffer_fragment(
zip_t
  *archive,
  
zip_buffer_fragment_t
  *fragments, 
zip_uint64_t
  nfragments, 
int
  freep);
zip_source_t *
zip_source_buffer_fragment_create(
zip_buffer_fragment_t
  *fragments, 
zip_uint64_t
  nfragments, 
int
  freep, 
zip_error_t
  *error);
DESCRIPTION
The functions 
zip_source_buffer_fragment() and
  
zip_source_buffer_fragment_create() create a zip source from
  the data in 
fragments. 
nfragments
  specifies the number of fragments. If 
freep is non-zero,
  the data will be freed when it is no longer needed.
struct zip_stat { 
    zip_uint8_t *data;    /* pointer to the actual data */ 
    zip_uint64_t length;  /* length of this fragment */ 
};
 
The data 
fragments point to must remain valid for the
  lifetime of the created source. 
fragments itself can be
  discarded once the source is created.
The source can be used to open a zip archive from.
RETURN VALUES
Upon successful completion, the created source is returned. Otherwise,
  
NULL is returned and the error code in
  
archive or 
error is set to
  indicate the error.
ERRORS
zip_source_buffer() and
  
zip_source_buffer_create() fail if:
  -  
-  
- [ZIP_ER_INVAL]
- nfragments is greater than zero and
      fragments is NULL.
-  
-  
- [ZIP_ER_MEMORY]
- Required memory could not be allocated.
SEE ALSO
libzip(3),
  
zip_add(3),
  
zip_open_from_source(3),
  
zip_replace(3),
  
zip_source(3)
HISTORY
zip_source_buffer_fragment() and
  
zip_source_buffer_fragment_create() were added in libzip
  1.4.0.
AUTHORS
Dieter Baron
  <
dillo@nih.at> and
  
Thomas Klausner
  <
tk@giga.or.at>