logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

zip_source_buffer_fragment, zip_source_buffer_fragment_create — create zip data source from multiple

Authors

       Dieter Baron <dillo@nih.at> and Thomas Klausner <wiz@gatalith.at>

Debian                                          December 18, 2017                  ZIP_SOURCE_BUFFER_FRAGMENT(3)

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.

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.

History

zip_source_buffer_fragment() and zip_source_buffer_fragment_create() were added in libzip 1.4.0.

Library

       libzip (-lzip)

Name

       zip_source_buffer_fragment,  zip_source_buffer_fragment_create  —  create  zip  data source from multiple
       buffer

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.

See Also

libzip(3), zip_file_add(3), zip_file_replace(3), zip_open_from_source(3), zip_source(3)

Synopsis

#include<zip.h>zip_source_t*zip_source_buffer_fragment(zip_t*archive,  zip_buffer_fragment_t*fragments,  zip_uint64_tnfragments,
           intfreep);

       zip_source_t*zip_source_buffer_fragment_create(zip_buffer_fragment_t*fragments,  zip_uint64_tnfragments, intfreep,
           zip_error_t*error);

See Also