set comment for file in zip

libzip (-lzip)

#include <zip.h>

zip_file_set_comment(zip_t *archive, zip_uint64_t index, const char *comment, zip_uint16_t len, zip_flags_t flags);

The zip_file_set_comment() function sets the comment for the file at position index in the zip archive to comment of length len. If comment is NULL and len is 0, the file comment will be removed. The flags argument can be any of:
Guess encoding of comment (default). (Only CP-437 and UTF-8 are recognized.)
Interpret comment as UTF-8.
Interpret comment as code page 437 (CP-437).

Upon successful completion 0 is returned. Otherwise, -1 is returned and the error information in archive is set to indicate the error.

zip_file_set_comment() fails if:
index is not a valid file index in archive, or len is less than 0 or longer than the maximum comment length in a zip file (65535), or comment is not a valid UTF-8 encoded string.
Required memory could not be allocated.
The archive was opened in read-only mode.

libzip(3), zip_file_get_comment(3), zip_get_archive_comment(3), zip_set_archive_comment(3)

zip_file_set_comment() was added in libzip 0.11.

Dieter Baron <> and Thomas Klausner <>