"Fossies" - the Fresh Open Source Software Archive

Member "libzip-1.5.2/man/zip_get_name.html" (12 Mar 2019, 7034 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_GET_NAME(3) Library Functions Manual ZIP_GET_NAME(3)

zip_get_name
get name of file by index

libzip (-lzip)

#include <zip.h>

const char *
zip_get_name(zip_t *archive, zip_uint64_t index, zip_flags_t flags);

The zip_get_name() function returns the name of the file at position index in archive. The name is in UTF-8 encoding unless ZIP_FL_ENC_RAW was specified (see below).

If flags is set to ZIP_FL_UNCHANGED, the original unchanged filename is returned. The returned string must not be modified or freed, and becomes invalid when archive is closed.

Additionally, the following flags are supported:

Return the unmodified names as it is in the ZIP archive.
(Default.) Guess the encoding of the name in the ZIP archive and convert it to UTF-8, if necessary.
Follow the ZIP specification and expect CP-437 encoded names in the ZIP archive (except if they are explicitly marked as UTF-8). Convert it to UTF-8.
Note: ASCII is a subset of both CP-437 and UTF-8.

Upon successful completion, a pointer to the name is returned. Otherwise, NULL and the error code in archive is set to indicate the error.

zip_get_name() fails if:
[]
index refers to a file that has been deleted (see zip_delete(3)).
[]
index is not a valid file index in archive, or index points to an added file and ZIP_FL_UNCHANGED is set.
[]
Required memory could not be allocated.

libzip(3), zip_name_locate(3)

zip_get_name() was added in libzip 0.6. In libzip 0.10 the type of index was changed from int to zip_uint64_t. In libzip 0.11 the type of flags was changed from int to zip_flags_t.

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