Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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 writ-
     ing).   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_create(3),
     zip_source_filep(3),      or      zip_source_filep_create(3)),	  memory
     zip_source_buffer_create(3),	 zip_source_buffer_fragment(3),       or
     zip_source_buffer_fragment_create(3)), a file inside an archive or provided
     via a callback function or zip_source_function_create(3)).  zip_source_win-
     dow(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 underly-
     ing 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  writ-
     ing.

     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  re-
     main 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>

FreeBSD ports 15.quarterly	   May 5, 2025			   ZIP_SOURCE(5)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=zip_source&sektion=5&manpath=FreeBSD+Ports+15.1.quarterly>

home | help