Provided by: libzip-dev_1.11.3-2_amd64 bug

NAME

       zip_close — close zip archive

LIBRARY

       libzip (-lzip)

SYNOPSIS

       #include <zip.h>

       int
       zip_close(zip_t *archive);

DESCRIPTION

       The  zip_close()  function writes any changes made to archive to disk.  If archive contains no files, the
       file   is   completely   removed   (no   empty   archive   is   written),   unless   the   archive   flag
       ZIP_AFL_CREATE_OR_KEEP_FILE_FOR_EMPTY_ARCHIVE  is  set.   If  successful,  archive  is  freed.  Otherwise
       archive is left unchanged and must still be freed.

       To close and free a zip archive without saving changes, use zip_discard(3).

       Progress  updates  for  GUIs  can  be  implemented  using   zip_register_progress_callback_with_state(3).
       Cancelling    the    write    of    an    archive    during    zip_close   can   be   implemented   using
       zip_register_cancel_callback_with_state(3).

RETURN VALUES

       Upon successful completion 0 is returned.  Otherwise, -1 is returned and the error code in archive is set
       to indicate the error.

ERRORS

       zip_close() will fail if:

       [ZIP_ER_EOF]       Unexpected end-of-file found while reading from a file.

       [ZIP_ER_INTERNAL]  The callback function of an added or replaced file returned an  error  but  failed  to
                          report which.

       [ZIP_ER_INVAL]     The path argument is NULL.

       [ZIP_ER_MEMORY]    Required memory could not be allocated.

       [ZIP_ER_NOZIP]     File is not a zip archive.

       [ZIP_ER_READ]      A file read failed.

       [ZIP_ER_RENAME]    A temporary file could not be renamed to its final name.

       [ZIP_ER_SEEK]      A file seek failed.

       [ZIP_ER_TMPOPEN]   A temporary file could not be created.

       [ZIP_ER_WRITE]     A file write failed.

       [ZIP_ER_ZLIB]      An error occurred while (de)compressing a stream with zlib(3).
       Additionally,  any  errors  returned  by the callback function for added or replaced files will be passed
       back.

SEE ALSO

       libzip(3),         zip_discard(3),         zip_fdopen(3),         zip_get_error(3),          zip_open(3),
       zip_register_cancel_callback_with_state(3),                 zip_register_progress_callback_with_state(3),
       zip_set_archive_flag(3), zip_strerror(3)

HISTORY

       zip_close() was added in libzip 0.6.

AUTHORS

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

CAVEATS

       Please note that all indices, zip_stat(3) information and other data about the archive is  invalid  after
       zip_close.  When you open the same file again, it will be a completely new zip_t structure.

Debian                                          January 23, 2023                                    ZIP_CLOSE(3)