zip_get_name - get name of file by index
#include <zip.h> const char * zip_get_name(zip_t *archive, zip_uint64_t index, zip_flags_t flags);
ZIP_GET_NAME(3) BSD Library Functions Manual ZIP_GET_NAME(3)
NAME
zip_get_name -- get name of file by index
LIBRARY
libzip (-lzip)
SYNOPSIS
#include <zip.h>
const char *
zip_get_name(zip_t *archive, zip_uint64_t index, zip_flags_t flags);
DESCRIPTION
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:
ZIP_FL_ENC_RAW Return the unmodified names as it is in the
ZIP archive.
ZIP_FL_ENC_GUESS (Default.) Guess the encoding of the name in
the ZIP archive and convert it to UTF-8, if
necessary.
ZIP_FL_ENC_STRICT 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.
RETURN VALUES
Upon successful completion, a pointer to the name is returned. Other-
wise, NULL and the error code in archive is set to indicate the error.
ERRORS
zip_get_name() fails if:
[ZIP_ER_DELETED] index refers to a file that has been deleted (see
zip_delete(3)).
[ZIP_ER_INVAL] index is not a valid file index in archive, or index
points to an added file and ZIP_FL_UNCHANGED is set.
[ZIP_ER_MEMORY] Required memory could not be allocated.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+------------------+
|Availability | compress/libzip |
+---------------+------------------+
|Stability | Volatile |
+---------------+------------------+
SEE ALSO
libzip(3), zip_name_locate(3)
HISTORY
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.
AUTHORS
Dieter Baron <dillo@nih.at> and Thomas Klausner <tk@giga.or.at>
NOTES
Source code for open source software components in Oracle Solaris can be
found at https://www.oracle.com/downloads/opensource/solaris-source-code-
downloads.html.
This software was built from source available at https://github.com/ora-
cle/solaris-userland. The original community source was downloaded from
https://libzip.org/download/libzip-1.7.3.tar.gz.
Further information about this software can be found on the open source
community website at https://libzip.org/.
BSD December 18, 2017 BSD