Provided by: libzip-dev_1.11.4-1_amd64 bug

NAME

       libzip — library for manipulating zip archives

LIBRARY

       libzip (-lzip)

SYNOPSIS

       #include <zip.h>

DESCRIPTION

       libzip is a library for reading, creating, and modifying zip archives.

       The main design criteria for libzip were:
          Maintain a stable API without breaking backwards compatibility.
          Do not create corrupt files, even in case of errors.
          Do not delete data.
          Be efficient.

       For this reason, when modifying zip archives, libzip writes to a temporary file and replaces the original
       zip archive atomically.

GENERAL NOTES

       When  adding  files to an archive, the file data is only read when the new archive is written.  Therefore
       all files added must remain valid until the archive is closed with zip_close(3) or zip_discard(3).

       Unless explicitly documented, functions should not be passed NULL pointers as arguments.

DATA TYPES

       These data types correspond to central concepts in libzip.  Most of them are private, meaning  you  can't
       allocate  them  or  access  their  members  directly.  This allows extending the structures in the future
       without breaking compatibility.

   zip_t
       This type represents an opened archive.  See zip(5).

   zip_file_t
       This type represents a file from an archive that has been opened for reading.  See zip_file(5).

   zip_source_t
       This type represents a source (or destination) of data.  It is used in libzip  for  providing  data  when
       adding  or replacing files, accessing data from a file inside an archive, and the data for the archive as
       a whole.  See zip_source(5).

   zip_error_t
       This type represents information about an error.  Its type can be checked against  pre-defined  constants
       and it can be converted to a human readable string.  See zip_error(5).

FILE NAMES

   Encoding
       Names  of  files  in the host file system are expected in UTF-8 encoding.  On Windows, variants for ASCII
       and UTF-16 are also available.

       Names of files inside archives are by default  expected  in  UTF-8  encoding.   Other  encodings  can  be
       requested by using the flags ZIP_FL_ENC_CP437 and ZIP_FL_ENC_RAW.

       For details see the relevant man pages.

   Directory Separator
       The zip format requires the use of forward slash (‘/’) as directory separator.  Since backslash (‘\’) can
       be  part  of  a  valid  file  name  on  Unix systems, libzip does not automatically convert them, even on
       Windows.  It is the responsibility of the programmer to ensure that all directory separators  are  passed
       as forward slashes to libzip.

THREAD SAFETY

       In  general,  different  zip  archives  opened by libzip are independent of each other and can be used by
       parallel-running threads without locking.  If you want to use an archive from multiple threads, you  have
       to  synchronize  access  to  it  yourself.   If  you  use  an  archive as a source for zip_file_add(3) or
       zip_file_replace(3), access to the target archive must be synchronized with access to the source  archive
       as well.

READING ZIP ARCHIVES

   Open Archive
          zip_open(3)
          zip_open_from_source(3)
          zip_fdopen(3)

   Get Archive Attributes
          zip_get_archive_comment(3)
          zip_get_archive_flag(3)
          zip_get_num_entries(3)

   Find Files
          zip_name_locate(3)

   Read Files
          zip_fopen(3)
          zip_fopen_encrypted(3)
          zip_fopen_index(3)
          zip_fopen_index_encrypted(3)
          zip_fread(3)
          zip_file_is_seekable(3)
          zip_fseek(3) (uncompressed files only)
          zip_ftell(3)
          zip_fclose(3)

   Close Archive
          zip_close(3)

   Get File Attributes
          zip_stat(3)
          zip_file_get_comment(3)
          zip_file_get_external_attributes(3)
          zip_get_name(3)

   Miscellaneous
          zip_compression_method_supported(3)
          zip_encryption_method_supported(3)
          zip_set_default_password(3)

CREATING/MODIFYING ZIP ARCHIVES

   Create/Open Archive
          zip_open(3)

   Add/Change Files and Directories
          zip_dir_add(3)
          zip_file_add(3)
          zip_file_replace(3)
          zip_file_set_comment(3)
          zip_file_set_dostime(3)
          zip_file_set_external_attributes(3)
          zip_file_set_encryption(3)
          zip_file_set_mtime(3)
          zip_set_file_compression(3)
          zip_source_buffer(3)
          zip_source_file(3)
          zip_source_filep(3)
          zip_source_zip(3)

   Rename Files
          zip_rename(3)

   Delete Files
          zip_delete(3)

   Revert Changes
          zip_unchange(3)
          zip_unchange_all(3)
          zip_unchange_archive(3)

   Read/Modify Extra Fields
          zip_file_extra_field_delete(3)
          zip_file_extra_field_delete_by_id(3)
          zip_file_extra_field_get(3)
          zip_file_extra_field_get_by_id(3)
          zip_file_extra_field_set(3)
          zip_file_extra_fields_count(3)
          zip_file_extra_fields_count_by_id(3)

   Close Archive (Writing)
          zip_close(3)
          zip_discard(3)

   Miscellaneous (Writing)
          zip_file_attributes_init(3)
          zip_libzip_version(3)
          zip_register_cancel_callback_with_state(3)
          zip_register_progress_callback_with_state(3)
          zip_set_archive_comment(3)
          zip_set_archive_flag(3)
          zip_source(5)

SOURCES

   Create Source
          zip_source_buffer(3)
          zip_source_file(3)
          zip_source_filep(3)
          zip_source_function(3)
          zip_source_layered(3)
          zip_source_zip(3)

   Using Source
          zip_file_add(3)
          zip_file_replace(3)
          zip_open_from_source(3)

   Implementing Source
          zip_source_pass_to_lower_layer(3)

   Source Life Cycle
          zip_source_free(3)
          zip_source_keep(3)

ERROR HANDLING

          zip_error_strerror(3)
          zip_strerror(3)
          zip_file_strerror(3)
          zip_file_get_error(3)
          zip_get_error(3)
          zip_error_init_with_code(3)
          zip_error_set(3)
          zip_error_set_from_source(3)
          zip_error_system_type(3)
          zip_errors(3)

AUTHORS

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

Debian                                             May 5, 2025                                         LIBZIP(3)