"Fossies" - the Fresh Open Source Software Archive

Member "libzip-1.5.2/man/zip_fopen.html" (12 Mar 2019, 8823 Bytes) of package /linux/misc/libzip-1.5.2.tar.xz:


Caution: In this restricted "Fossies" environment the current HTML page may not be correctly presentated and may have some non-functional links. You can here alternatively try to browse the pure source code or just view or download the uninterpreted raw source code. If the rendering is insufficient you may try to find and view the page on the libzip-1.5.2.tar.xz project site itself.

ZIP_FOPEN(3) Library Functions Manual ZIP_FOPEN(3)

zip_fopen, zip_fopen_index
open file in zip archive for reading

libzip (-lzip)

#include <zip.h>

zip_file_t *
zip_fopen(zip_t *archive, const char *fname, zip_flags_t flags);

zip_file_t *
zip_fopen_index(zip_t *archive, zip_uint64_t index, zip_flags_t flags);

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.
Read the compressed data. Otherwise the data is uncompressed by zip_fread().
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).

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.

[]
The file data has been changed.
[]
The compression method used is not supported.
[]
The encryption method used is not supported.
[]
Required memory could not be allocated.
[]
The file is encrypted, but no password has been provided.
[]
A file read error occurred.
[]
A file seek error occurred.
[]
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().
[]
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.

libzip(3), zip_fclose(3), zip_fread(3), zip_fseek(3), zip_get_num_entries(3), zip_name_locate(3), zip_set_default_password(3)

zip_fopen() and zip_fopen_index() were added in libzip 1.0.

Dieter Baron <dillo@nih.at> and Thomas Klausner <tk@giga.or.at>
December 18, 2017 NetBSD 8.99.35