ZIP_FOPEN
Section: Library Functions Manual (3)
Updated: October 23, 2013
Index
Return to Main Contents
NAME
zip_fopen,
zip_fopen_index
- open file in zip archive for reading
LIBRARY
libzip (-lzip)
SYNOPSIS
#include <zip.h>
struct zip_file *
zip_fopen(struct zip *archive, const char *fname, zip_flags_t flags);
struct zip_file *
zip_fopen_index(struct zip *archive, zip_uint64_t index, zip_flags_t flags);
DESCRIPTION
The
zip_fopen()
function opens the file name
fname
in
archive.
The
flags
argument specifies how the name lookup should be done, according to
the values are described in
zip_name_locate(3).
Also, the following values may be
or'ed
to it.
-
- ZIP_FL_COMPRESSED
-
Read the compressed data.
Otherwise the data is uncompressed by
zip_fread().
- ZIP_FL_UNCHANGED
-
Read the original data from the zip archive, ignoring any changes made
to the file.
The
zip_fopen_index()
function opens the file at position
index.
If encrypted data is encountered, the functions call
zip_fopen_encrypted(3)
or
zip_fopen_index_encrypted(3)
respectively, using the default password set with
zip_set_default_password(3).
RETURN VALUES
Upon successful completion, a
struct zip_file
pointer is returned.
Otherwise,
NULL
is returned and the error code in
archive
is set to indicate the error.
ERRORS
- [ZIP_ER_CHANGED]
-
The file data has been changed.
- [ZIP_ER_COMPNOTSUPP]
-
The compression method used is not supported.
- [ZIP_ER_ENCRNOTSUPP]
-
The encryption method used is not supported.
- [ZIP_ER_MEMORY]
-
Required memory could not be allocated.
- [ZIP_ER_NOPASSWD]
-
The file is encrypted, but no password has been provided.
- [ZIP_ER_READ]
-
A file read error occurred.
- [ZIP_ER_SEEK]
-
A file seek error occurred.
- [ZIP_ER_WRONGPASSWD]
-
The provided password does not match the password used for encryption.
Note that some incorrect passwords are not detected by the check done by
zip_fopen().
- [ZIP_ER_ZLIB]
-
Initializing the zlib stream failed.
The function
zip_fopen()
may also fail and set
zip_err
for any of the errors specified for the routine
zip_name_locate(3).
The function
zip_fopen_index()
may also fail with
ZIP_ER_INVAL
if
index
is invalid.
SEE ALSO
libzip(3),
zip_fclose(3),
zip_fread(3),
zip_get_num_entries(3),
zip_name_locate(3),
zip_set_default_password(3)
AUTHORS
Dieter Baron <
dillo@nih.at>
and
Thomas Klausner <
tk@giga.or.at>
Index
- NAME
-
- LIBRARY
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUES
-
- ERRORS
-
- SEE ALSO
-
- AUTHORS
-