Get comment for file in zip
libzip (-lzip)
#include <zip.h>
const char *
zip_file_get_comment(struct zip *archive, zip_uint64_t index, zip_uint32_t *lenp, zip_flags_t flags);
The zip_file_get_comment() function returns the comment for the file at position index in the zip archive. The name is in UTF-8 encoding unless ZIP_FL_ENC_RAW was specified (see below). This pointer should not be modified or free(3)'d, and becomes invalid when archive is closed. If lenp is not NULL, the integer to which it points will be set to the length of the comment. If flags is set to ZIP_FL_UNCHANGED, the original unchanged comment is returned.
Additionally, the following flags are supported:
ZIP_FL_ENC_RAW
Return the unmodified comment as it is in the ZIP archive.
ZIP_FL_ENC_GUESS
(Default.) Guess the encoding of the comment in the ZIP archive and convert it to UTF-8, if necessary.
ZIP_FL_ENC_STRICT
Follow the ZIP specification for file names and extend it to file comments, expecting them to be encoded in CP-437 in the ZIP archive (except if it is a UTF-8 comment from the special extra field). Convert it to UTF-8.
Note: ASCII is a subset of both CP-437 and UTF-8.
Upon successful completion, a pointer to the comment is returned, or NULL if there is no comment. In case of an error, NULL is returned and the error code in archive is set to indicate the error.
zip_file_get_comment() fails if:
[ZIP_ER_INVAL]
index is not a valid file index in archive.
Dieter Baron <[email protected]> and Thomas Klausner <[email protected]>