LIBRARY

libzip (-lzip)

SYNOPSIS

#include <zip.h>

struct zip *

zip_open(const char *pathint flagsint *errorp);

DESCRIPTION

The zip archive specified by path is opened and a pointer to a struct zip, used to manipulate the archive, is returned. 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.

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

RETURN VALUES

Upon successful completion zip_open() returns a struct zip pointer. Otherwise, NULL is returned and *errorp is set 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.

RELATED TO zip_open…

AUTHORS

Dieter Baron <[email protected]> and Thomas Klausner <[email protected]>