NAME
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_EXCLis set.
-  
-  
- [ZIP_ER_INCONS]
- Inconsistencies were found in the file specified by
      path. This error is often caused by specifying
      ZIP_CHECKCONSbut 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_CREATEis 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)
HISTORY
zip_open() and 
zip_open_from_source() were
  added in libzip 1.0.
AUTHORS
Dieter Baron
  <
dillo@nih.at> and
  
Thomas Klausner
  <
tk@giga.or.at>