NAME¶
zip_close - close zip archive
LIBRARY¶
libzip (-lzip)
SYNOPSIS¶
#include <zip.h>
int
zip_close(
struct zip *archive);
DESCRIPTION¶
The
zip_close() function closes
archive and frees the memory
allocated for it. If any files within were changed, those changes are written
to disk first. If writing changes fails,
zip_close() fails and
archive is left unchanged. If
archive contains no files, the
file is completely removed (no empty archive is written).
To close a zip file without saving changes, use
zip_discard(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_error_get(3),
zip_fdopen(3),
zip_open(3),
zip_strerror(3)
AUTHORS¶
Dieter Baron <
dillo@nih.at> and Thomas Klausner <
tk@giga.or.at>