zip_open man page

zip_open, zip_open_from_source — open zip archive

Library

libzip (-lzip)

Synopsis

#include <zip.h>

zip_t *

zip_open(const char *path, int flags, int *errorp);

zip_t *

zip_open_from_source(zip_source_t *zs, int flags, zip_error_t *ze);

Description

The zip_open() function opens the zip archive specified by path and returns a pointer to a struct zip, used to manipulate the archive. The flags are specified by or'ing the following values, or 0 for none of them.

ZIP_CHECKCONS
Perform additional stricter consistency checks on the archive, and error if they fail.
ZIP_CREATE
Create the archive if it does not exist.
ZIP_EXCL
Error if archive already exists.
ZIP_TRUNCATE
If archive exists, ignore its current contents. In other words, handle it the same way as an empty archive.
ZIP_RDONLY
Open archive in read-only mode.

If an error occurs and errorp is non-NULL, it will be set to the corresponding error code.

The zip_open_from_source() function opens a zip archive encapsulated by the zip_source zs using the provided flags. In case of error, the zip_error ze is filled in.

Return Values

Upon successful completion zip_open() and zip_open_from_source() return a struct zip pointer. Otherwise, NULL is returned and zip_open() sets *errorp to indicate the error, while zip_open_from(source) sets ze to indicate the error.

Errors

The archive specified by path is opened unless:

[ZIP_ER_EXISTS]
The file specified by path exists and ZIP_EXCL is set.
[ZIP_ER_INCONS]
Inconsistencies were found in the file specified by path. This error is often caused by specifying ZIP_CHECKCONS but can also happen without it.
[ZIP_ER_INVAL]
The path argument is NULL.
[ZIP_ER_MEMORY]
Required memory could not be allocated.
[ZIP_ER_NOENT]
The file specified by path does not exist and ZIP_CREATE is not set.
[ZIP_ER_NOZIP]
The file specified by path is not a zip archive.
[ZIP_ER_OPEN]
The file specified by path could not be opened.
[ZIP_ER_READ]
A read error occurred; see errno for details.
[ZIP_ER_SEEK]
The file specified by path does not allow seeks.

See Also

libzip(3), zip_close(3), zip_error_to_str(3), zip_fdopen(3)

Authors

Dieter Baron <dillo@nih.at> and Thomas Klausner <tk@giga.or.at>

Referenced By

libzip(3), zip_close(3), zip_fdopen(3), zip_source(3), zip_source_buffer(3), zip_source_free(3).

zip_open_from_source(3) is an alias of zip_open(3).

November 9, 2014 NiH Library Functions Manual