manpagez: man pages & more
man zip_source(5)
Home | html | info | man
zip_source(5)                 File Formats Manual                zip_source(5)


NAME

     zip_source - zip data source structure


LIBRARY

     libzip (-lzip)


SYNOPSIS

     #include <zip.h>

     zip_source_t *source;


DESCRIPTION

     A zip_source_t represents a data source (or destination when used for
     writing).  libzip(3) uses it for adding or replacing file contents for a
     file in a zip archive.  If the source supports seeking, it can also be
     used to open zip archives from.

     Data can come from a file on disk (zip_source_file(3),
     zip_source_file_create(3), zip_source_filep(3), or
     zip_source_filep_create(3)), memory (zip_source_buffer(3),
     zip_source_buffer_create(3), zip_source_buffer_fragment(3), or
     zip_source_buffer_fragment_create(3)), a file inside an archive
     (zip_source_zip(3)), or provided via a callback function
     (zip_source_function(3) or zip_source_function_create(3)).
     zip_source_window(3) or zip_source_window_create(3) can be used restrict
     access to a part of the contained data.

     It can also be used as a filter to process the data provided by an
     underlying zip_source_t (e.g., to compress it or compute a checksum),
     created with zip_source_layered(3) or zip_source_layered_create(3)).

     Sources are freed with zip_source_free(3).

     Sources must support reading, and can optionally support seeking and
     writing.

     zip_source_t is reference counted, and created with a reference count of
     1.  zip_open_from_source(3), zip_file_add(3), and zip_file_replace(3)
     will take ownership of the passed source (decrement the reference count
     when they are done using it), so zip_source_free(3) only needs to be
     called when these functions return an error.  The underlying data (file
     or buffer) must remain valid until the archive is closed.  Use
     zip_source_keep(3) to increase the reference count, for example if you
     need the source after zip_close(3).


SEE ALSO

     libzip(3), zip_source_buffer(3), zip_source_file(3), zip_source_filep(3),
     zip_source_free(3), zip_source_function(3), zip_source_keep(3),
     zip_source_window(3), zip_source_zip(3)


AUTHORS

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

macOS 15.6                        May 5, 2025                       macOS 15.6

libzip 1.11.4 - Generated Mon Aug 4 11:12:02 CDT 2025
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.