Add API for getting/setting extra field data. Doesn't parse the fields yet, just provides them to the library user. Open points: * cdir extra field entries are not changed * heuristics for finding cdir should be adapted Based on patch provided by Jono Spiro <jono.spiro@gmail.com> (with minimal changes). --HG-- branch : HEAD
diff --git a/lib/zip.h b/lib/zip.h index 94ee69b..261e550 100644 --- a/lib/zip.h +++ b/lib/zip.h
@@ -230,6 +230,8 @@ ZIP_EXTERN int zip_get_archive_flag(struct zip *, int, int); ZIP_EXTERN const char *zip_get_file_comment(struct zip *, zip_uint64_t, int *, int); +ZIP_EXTERN const char *zip_get_file_extra(struct zip *, zip_uint64_t, + int *, int); ZIP_EXTERN const char *zip_get_name(struct zip *, zip_uint64_t, int); ZIP_EXTERN int zip_get_num_files(struct zip *); ZIP_EXTERN int zip_name_locate(struct zip *, const char *, int); @@ -241,6 +243,8 @@ ZIP_EXTERN int zip_set_default_password(struct zip *, const char *); ZIP_EXTERN int zip_set_file_comment(struct zip *, zip_uint64_t, const char *, int); +ZIP_EXTERN int zip_set_file_extra(struct zip *, zip_uint64_t, + const char *, int); ZIP_EXTERN struct zip_source *zip_source_buffer(struct zip *, const void *, zip_uint64_t, int); ZIP_EXTERN struct zip_source *zip_source_file(struct zip *, const char *,