24#ifdef ZIP_BUILD_SHARED
25#define ZIP_EXPORT __declspec(dllexport)
27#define ZIP_EXPORT __declspec(dllimport)
30#define ZIP_EXPORT __attribute__((visibility("default")))
38#if !defined(_POSIX_C_SOURCE) && defined(_MSC_VER)
42typedef long long ssize_t;
62#define ZIP_DEFAULT_COMPRESSION_LEVEL 6
68#define ZIP_EINVENTNAME -2
70#define ZIP_EINVMODE -4
72#define ZIP_ENOSUP64 -6
75#define ZIP_ETDEFLINIT -9
76#define ZIP_EINVIDX -10
78#define ZIP_ETDEFLBUF -12
79#define ZIP_ECRTHDR -13
80#define ZIP_EWRTHDR -14
81#define ZIP_EWRTDIR -15
82#define ZIP_EOPNFILE -16
83#define ZIP_EINVENTTYPE -17
84#define ZIP_EMEMNOALLOC -18
85#define ZIP_ENOFILE -19
86#define ZIP_ENOPERM -20
88#define ZIP_EINVZIPNAME -22
90#define ZIP_ESYMLINK -24
91#define ZIP_ECLSZIP -25
92#define ZIP_ECAPSIZE -26
95#define ZIP_EFWRITE -29
98#define ZIP_EWRINIT -32
128extern ZIP_EXPORT
struct zip_t *
zip_open(
const char *zipname,
int level,
145extern ZIP_EXPORT
struct zip_t *
202 const char *entryname);
398 size_t (*on_extract)(
void *arg, uint64_t offset,
399 const void *data,
size_t size),
421 char *
const entries[],
size_t len);
454 int (*on_extract)(
const char *filename,
void *arg),
471 int level,
char mode);
489 size_t size,
int level,
546extern ZIP_EXPORT
struct zip_t *
566extern ZIP_EXPORT
int zip_create(
const char *zipname,
const char *filenames[],
585extern ZIP_EXPORT
int zip_extract(
const char *zipname,
const char *dir,
586 int (*on_extract_entry)(
const char *filename,
int zip_is64(struct zip_t *zip)
int zip_entry_extract(struct zip_t *zip, size_t(*on_extract)(void *arg, uint64_t offset, const void *data, size_t size), void *arg)
struct zip_t * zip_openwitherror(const char *zipname, int level, char mode, int *errnum)
unsigned long long zip_entry_size(struct zip_t *zip)
int zip_entry_isdir(struct zip_t *zip)
ssize_t zip_entry_index(struct zip_t *zip)
const char * zip_entry_name(struct zip_t *zip)
struct zip_t * zip_open(const char *zipname, int level, char mode)
ssize_t zip_entries_deletebyindex(struct zip_t *zip, size_t entries[], size_t len)
void zip_stream_close(struct zip_t *zip)
int zip_entry_fread(struct zip_t *zip, const char *filename)
struct zip_t * zip_stream_open(const char *stream, size_t size, int level, char mode)
const char * zip_strerror(int errnum)
ssize_t zip_stream_copy(struct zip_t *zip, void **buf, size_t *bufsize)
ssize_t zip_entries_delete(struct zip_t *zip, char *const entries[], size_t len)
int zip_entry_fwrite(struct zip_t *zip, const char *filename)
void zip_cstream_close(struct zip_t *zip)
ssize_t zip_entry_noallocread(struct zip_t *zip, void *buf, size_t bufsize)
int zip_offset(struct zip_t *zip, uint64_t *offset)
struct zip_t * zip_cstream_open(FILE *stream, int level, char mode)
unsigned int zip_entry_crc32(struct zip_t *zip)
unsigned long long zip_entry_uncomp_size(struct zip_t *zip)
struct zip_t * zip_stream_openwitherror(const char *stream, size_t size, int level, char mode, int *errnum)
int zip_create(const char *zipname, const char *filenames[], size_t len)
void zip_close(struct zip_t *zip)
int zip_entry_open(struct zip_t *zip, const char *entryname)
int zip_entry_opencasesensitive(struct zip_t *zip, const char *entryname)
int zip_extract(const char *zipname, const char *dir, int(*on_extract_entry)(const char *filename, void *arg), void *arg)
struct zip_t * zip_cstream_openwitherror(FILE *stream, int level, char mode, int *errnum)
int zip_entry_close(struct zip_t *zip)
unsigned long long zip_entry_header_offset(struct zip_t *zip)
int zip_entry_openbyindex(struct zip_t *zip, size_t index)
int zip_entry_write(struct zip_t *zip, const void *buf, size_t bufsize)
ssize_t zip_entry_read(struct zip_t *zip, void **buf, size_t *bufsize)
unsigned long long zip_entry_dir_offset(struct zip_t *zip)
ssize_t zip_entries_total(struct zip_t *zip)
int zip_stream_extract(const char *stream, size_t size, const char *dir, int(*on_extract)(const char *filename, void *arg), void *arg)
unsigned long long zip_entry_comp_size(struct zip_t *zip)