rename zip_source function and commands
--HG--
branch : HEAD
diff --git a/lib/zip.h b/lib/zip.h
index 05e6bc0..3c3de01 100644
--- a/lib/zip.h
+++ b/lib/zip.h
@@ -2,7 +2,7 @@
#define _HAD_ZIP_H
/*
- $NiH: zip.h,v 1.45 2004/11/30 23:02:46 wiz Exp $
+ $NiH: zip.h,v 1.46 2004/12/22 15:49:18 wiz Exp $
zip.h -- exported declarations.
Copyright (C) 1999, 2003, 2004 Dieter Baron and Thomas Klausner
@@ -106,17 +106,17 @@
-enum zip_cmd {
- ZIP_CMD_OPEN, /* prepare for reading */
- ZIP_CMD_READ, /* read data */
- ZIP_CMD_CLOSE, /* reading is done */
- ZIP_CMD_STAT, /* get meta information */
- ZIP_CMD_ERROR, /* get error information */
- ZIP_CMD_FREE /* cleanup and free resources */
+enum zip_source_cmd {
+ ZIP_SOURCE_OPEN, /* prepare for reading */
+ ZIP_SOURCE_READ, /* read data */
+ ZIP_SOURCE_CLOSE, /* reading is done */
+ ZIP_SOURCE_STAT, /* get meta information */
+ ZIP_SOURCE_ERROR, /* get error information */
+ ZIP_SOURCE_FREE /* cleanup and free resources */
};
-typedef ssize_t (*zip_read_func)(void *state, void *data,
- size_t len, enum zip_cmd cmd);
+typedef ssize_t (*zip_source_callback)(void *state, void *data,
+ size_t len, enum zip_source_cmd cmd);
struct zip_stat {
const char *name; /* name of the file */
@@ -156,7 +156,8 @@
struct zip_source *zip_source_file(struct zip *, const char *, off_t, off_t);
struct zip_source *zip_source_filep(struct zip *, FILE *, off_t, off_t);
void zip_source_free(struct zip_source *);
-struct zip_source *zip_source_function(struct zip *, zip_read_func, void *);
+struct zip_source *zip_source_function(struct zip *,
+ zip_source_callback, void *);
struct zip_source *zip_source_zip(struct zip *, struct zip *, int, int,
off_t, off_t);
int zip_stat(struct zip *, const char *, int, struct zip_stat *);
diff --git a/lib/zip_close.c b/lib/zip_close.c
index 6835940..8357c66 100644
--- a/lib/zip_close.c
+++ b/lib/zip_close.c
@@ -1,5 +1,5 @@
/*
- $NiH: zip_close.c,v 1.43 2004/11/17 21:55:10 wiz Exp $
+ $NiH: zip_close.c,v 1.44 2004/11/18 15:04:04 wiz Exp $
zip_close.c -- close zip archive and update changes
Copyright (C) 1999, 2004 Dieter Baron and Thomas Klausner
@@ -47,11 +47,11 @@
#include "zipint.h"
static int add_data(struct zip *, int, struct zip_dirent *, FILE *);
-static int add_data_comp(zip_read_func, void *, struct zip_stat *, FILE *,
- struct zip_error *);
-static int add_data_uncomp(zip_read_func, void *, struct zip_stat *, FILE *,
- struct zip_error *);
-static void ch_set_error(struct zip_error *, zip_read_func, void *);
+static int add_data_comp(zip_source_callback, void *, struct zip_stat *,
+ FILE *, struct zip_error *);
+static int add_data_uncomp(zip_source_callback, void *, struct zip_stat *,
+ FILE *, struct zip_error *);
+static void ch_set_error(struct zip_error *, zip_source_callback, void *);
static int copy_data(FILE *, off_t, FILE *, struct zip_error *);
@@ -240,20 +240,20 @@
add_data(struct zip *za, int idx, struct zip_dirent *de, FILE *ft)
{
off_t offstart, offend;
- zip_read_func rf;
+ zip_source_callback cb;
void *ud;
struct zip_stat st;
- rf = za->entry[idx].source->f;
+ cb = za->entry[idx].source->f;
ud = za->entry[idx].source->ud;
- if (rf(ud, &st, sizeof(st), ZIP_CMD_STAT) < sizeof(st)) {
- ch_set_error(&za->error, rf, ud);
+ if (cb(ud, &st, sizeof(st), ZIP_SOURCE_STAT) < sizeof(st)) {
+ ch_set_error(&za->error, cb, ud);
return -1;
}
- if (rf(ud, NULL, 0, ZIP_CMD_OPEN) < 0) {
- ch_set_error(&za->error, rf, ud);
+ if (cb(ud, NULL, 0, ZIP_SOURCE_OPEN) < 0) {
+ ch_set_error(&za->error, cb, ud);
return -1;
}
@@ -263,16 +263,16 @@
return -1;
if (st.comp_method != ZIP_CM_STORE) {
- if (add_data_comp(rf, ud, &st, ft, &za->error) < 0)
+ if (add_data_comp(cb, ud, &st, ft, &za->error) < 0)
return -1;
}
else {
- if (add_data_uncomp(rf, ud, &st, ft, &za->error) < 0)
+ if (add_data_uncomp(cb, ud, &st, ft, &za->error) < 0)
return -1;
}
- if (rf(ud, NULL, 0, ZIP_CMD_CLOSE) < 0) {
- ch_set_error(&za->error, rf, ud);
+ if (cb(ud, NULL, 0, ZIP_SOURCE_CLOSE) < 0) {
+ ch_set_error(&za->error, cb, ud);
return -1;
}
@@ -303,14 +303,14 @@
static int
-add_data_comp(zip_read_func rf, void *ud, struct zip_stat *st,FILE *ft,
+add_data_comp(zip_source_callback cb, void *ud, struct zip_stat *st,FILE *ft,
struct zip_error *error)
{
char buf[BUFSIZE];
ssize_t n;
st->comp_size = 0;
- while ((n=rf(ud, buf, sizeof(buf), ZIP_CMD_READ)) > 0) {
+ while ((n=cb(ud, buf, sizeof(buf), ZIP_SOURCE_READ)) > 0) {
if (fwrite(buf, 1, n, ft) != n) {
_zip_error_set(error, ZIP_ER_WRITE, errno);
return -1;
@@ -319,7 +319,7 @@
st->comp_size += n;
}
if (n < 0) {
- ch_set_error(error, rf, ud);
+ ch_set_error(error, cb, ud);
return -1;
}
@@ -329,8 +329,8 @@
static int
-add_data_uncomp(zip_read_func rf, void *ud, struct zip_stat *st, FILE *ft,
- struct zip_error *error)
+add_data_uncomp(zip_source_callback cb, void *ud, struct zip_stat *st,
+ FILE *ft, struct zip_error *error)
{
char b1[BUFSIZE], b2[BUFSIZE];
int end, flush, ret;
@@ -359,8 +359,8 @@
end = 0;
while (!end) {
if (zstr.avail_in == 0 && !flush) {
- if ((n=rf(ud, b1, sizeof(b1), ZIP_CMD_READ)) < 0) {
- ch_set_error(error, rf, ud);
+ if ((n=cb(ud, b1, sizeof(b1), ZIP_SOURCE_READ)) < 0) {
+ ch_set_error(error, cb, ud);
deflateEnd(&zstr);
return -1;
}
@@ -405,11 +405,11 @@
static void
-ch_set_error(struct zip_error *error, zip_read_func rf, void *ud)
+ch_set_error(struct zip_error *error, zip_source_callback cb, void *ud)
{
int e[2];
- if ((rf(ud, e, sizeof(e), ZIP_CMD_READ)) < sizeof(e)) {
+ if ((cb(ud, e, sizeof(e), ZIP_SOURCE_READ)) < sizeof(e)) {
error->zip_err = ZIP_ER_INTERNAL;
error->sys_err = 0;
}
diff --git a/lib/zip_source_buffer.c b/lib/zip_source_buffer.c
index 115b068..5ea7ff5 100644
--- a/lib/zip_source_buffer.c
+++ b/lib/zip_source_buffer.c
@@ -1,5 +1,5 @@
/*
- $NiH: zip_source_buffer.c,v 1.2 2004/11/18 16:28:12 wiz Exp $
+ $NiH: zip_source_buffer.c,v 1.1 2004/11/18 17:26:51 wiz Exp $
zip_source_buffer.c -- create zip data source from buffer
Copyright (C) 1999, 2003, 2004 Dieter Baron and Thomas Klausner
@@ -48,7 +48,7 @@
};
static ssize_t read_data(void *state, void *data, size_t len,
- enum zip_cmd cmd);
+ enum zip_source_cmd cmd);
@@ -87,7 +87,7 @@
static int
-read_data(void *state, void *data, size_t len, enum zip_cmd cmd)
+read_data(void *state, void *data, size_t len, enum zip_source_cmd cmd)
{
struct read_data *z;
char *buf;
@@ -97,11 +97,11 @@
buf = (char *)data;
switch (cmd) {
- case ZIP_CMD_OPEN:
+ case ZIP_SOURCE_OPEN:
z->buf = z->data;
return 0;
- case ZIP_CMD_READ:
+ case ZIP_SOURCE_READ:
n = z->end - z->buf;
if (n > len)
n = len;
@@ -115,10 +115,10 @@
return n;
- case ZIP_CMD_CLOSE:
+ case ZIP_SOURCE_CLOSE:
return 0;
- case ZIP_CMD_STAT:
+ case ZIP_SOURCE_STAT:
{
struct zip_stat *st;
@@ -136,7 +136,7 @@
return sizeof(*st);
}
- case ZIP_CMD_ERROR:
+ case ZIP_SOURCE_ERROR:
{
int *e;
@@ -148,7 +148,7 @@
}
return sizeof(int)*2;
- case ZIP_CMD_FREE:
+ case ZIP_SOURCE_FREE:
if (z->freep) {
free((void *)z->data);
z->data = NULL;
diff --git a/lib/zip_source_filep.c b/lib/zip_source_filep.c
index 71d03b9..e08d2a8 100644
--- a/lib/zip_source_filep.c
+++ b/lib/zip_source_filep.c
@@ -1,5 +1,5 @@
/*
- $NiH: zip_source_filep.c,v 1.1 2004/11/18 15:06:24 wiz Exp $
+ $NiH: zip_source_filep.c,v 1.2 2004/11/18 16:28:13 wiz Exp $
zip_source_filep.c -- create data source from FILE *
Copyright (C) 1999, 2003, 2004 Dieter Baron and Thomas Klausner
@@ -52,7 +52,8 @@
int e[2]; /* error codes */
};
-static int read_file(void *state, void *data, size_t len, enum zip_cmd cmd);
+static int read_file(void *state, void *data, size_t len,
+ enum zip_source_cmd cmd);
@@ -90,7 +91,7 @@
static int
-read_file(void *state, void *data, size_t len, enum zip_cmd cmd)
+read_file(void *state, void *data, size_t len, enum zip_source_cmd cmd)
{
struct read_file *z;
char *buf;
@@ -100,7 +101,7 @@
buf = (char *)data;
switch (cmd) {
- case ZIP_CMD_OPEN:
+ case ZIP_SOURCE_OPEN:
if (fseeko(z->f, z->off, SEEK_SET) < 0) {
z->e[0] = ZIP_ER_SEEK;
z->e[1] = errno;
@@ -109,7 +110,7 @@
z->remain = z->len;
return 0;
- case ZIP_CMD_READ:
+ case ZIP_SOURCE_READ:
if (z->remain != -1)
n = len > z->remain ? z->remain : len;
else
@@ -126,10 +127,10 @@
return i;
- case ZIP_CMD_CLOSE:
+ case ZIP_SOURCE_CLOSE:
return 0;
- case ZIP_CMD_STAT:
+ case ZIP_SOURCE_STAT:
{
struct zip_stat *st;
struct stat fst;
@@ -159,14 +160,14 @@
return sizeof(*st);
}
- case ZIP_CMD_ERROR:
+ case ZIP_SOURCE_ERROR:
if (len < sizeof(int)*2)
return -1;
memcpy(data, z->e, sizeof(int)*2);
return sizeof(int)*2;
- case ZIP_CMD_FREE:
+ case ZIP_SOURCE_FREE:
fclose(z->f);
free(z);
return 0;
diff --git a/lib/zip_source_free.c b/lib/zip_source_free.c
index 7d4f5f8..ecc18f6 100644
--- a/lib/zip_source_free.c
+++ b/lib/zip_source_free.c
@@ -1,5 +1,5 @@
/*
- $NiH: zip_source_free.c,v 1.17 2004/11/17 21:55:13 wiz Exp $
+ $NiH: zip_source_free.c,v 1.1 2004/11/18 15:06:24 wiz Exp $
zip_source_free.c -- free zip data source
Copyright (C) 1999, 2003, 2004 Dieter Baron and Thomas Klausner
@@ -48,7 +48,7 @@
if (source == NULL)
return;
- (void)source->f(source->ud, NULL, 0, ZIP_CMD_FREE);
+ (void)source->f(source->ud, NULL, 0, ZIP_SOURCE_FREE);
free(source);
}
diff --git a/lib/zip_source_function.c b/lib/zip_source_function.c
index 746f9e3..d6bb799 100644
--- a/lib/zip_source_function.c
+++ b/lib/zip_source_function.c
@@ -1,5 +1,5 @@
/*
- $NiH: zip_source_function.c,v 1.1 2004/11/18 15:06:24 wiz Exp $
+ $NiH: zip_source_function.c,v 1.2 2004/11/18 16:28:13 wiz Exp $
zip_source_function.c -- create zip data source from callback function
Copyright (C) 1999, 2003, 2004 Dieter Baron and Thomas Klausner
@@ -43,7 +43,7 @@
struct zip_source *
-zip_source_function(struct zip *za, zip_read_func zrf, void *ud)
+zip_source_function(struct zip *za, zip_source_callback zcb, void *ud)
{
struct zip_source *zs;
@@ -55,7 +55,7 @@
return NULL;
}
- zs->f = zrf;
+ zs->f = zcb;
zs->ud = ud;
return zs;
diff --git a/lib/zip_source_zip.c b/lib/zip_source_zip.c
index 02fc3a0..37ca0fb 100644
--- a/lib/zip_source_zip.c
+++ b/lib/zip_source_zip.c
@@ -1,5 +1,5 @@
/*
- $NiH: zip_source_zip.c,v 1.1 2004/11/18 15:06:24 wiz Exp $
+ $NiH: zip_source_zip.c,v 1.2 2004/11/18 16:28:13 wiz Exp $
zip_source_zip.c -- create data source from zip file
Copyright (C) 1999, 2003, 2004 Dieter Baron and Thomas Klausner
@@ -47,7 +47,8 @@
off_t off, len;
};
-static ssize_t read_zip(void *st, void *data, size_t len, enum zip_cmd cmd);
+static ssize_t read_zip(void *st, void *data, size_t len,
+ enum zip_source_cmd cmd);
@@ -116,7 +117,7 @@
static ssize_t
-read_zip(void *state, void *data, size_t len, enum zip_cmd cmd)
+read_zip(void *state, void *data, size_t len, enum zip_source_cmd cmd)
{
struct read_zip *z;
char b[8192], *buf;
@@ -126,7 +127,7 @@
buf = (char *)data;
switch (cmd) {
- case ZIP_CMD_OPEN:
+ case ZIP_SOURCE_OPEN:
for (n=0; n<z->off; n+= i) {
i = (z->off-n > sizeof(b) ? sizeof(b) : z->off-n);
if ((i=zip_fread(z->zf, b, i)) < 0) {
@@ -137,7 +138,7 @@
}
return 0;
- case ZIP_CMD_READ:
+ case ZIP_SOURCE_READ:
if (z->len != -1)
n = len > z->len ? z->len : len;
else
@@ -154,10 +155,10 @@
return i;
- case ZIP_CMD_CLOSE:
+ case ZIP_SOURCE_CLOSE:
return 0;
- case ZIP_CMD_STAT:
+ case ZIP_SOURCE_STAT:
if (len < sizeof(z->st))
return -1;
len = sizeof(z->st);
@@ -165,7 +166,7 @@
memcpy(data, &z->st, len);
return len;
- case ZIP_CMD_ERROR:
+ case ZIP_SOURCE_ERROR:
{
int *e;
@@ -177,7 +178,7 @@
}
return sizeof(int)*2;
- case ZIP_CMD_FREE:
+ case ZIP_SOURCE_FREE:
zip_fclose(z->zf);
free(z);
return 0;
diff --git a/lib/zip_stat_index.c b/lib/zip_stat_index.c
index 06d5b74..09da4df 100644
--- a/lib/zip_stat_index.c
+++ b/lib/zip_stat_index.c
@@ -1,5 +1,5 @@
/*
- $NiH: zip_stat_index.c,v 1.6 2004/11/18 15:04:05 wiz Exp $
+ $NiH: zip_stat_index.c,v 1.7 2004/11/30 23:02:47 wiz Exp $
zip_stat_index.c -- get information about file by index
Copyright (C) 1999, 2003, 2004 Dieter Baron and Thomas Klausner
@@ -57,7 +57,7 @@
if ((flags & ZIP_FL_UNCHANGED) == 0
&& ZIP_ENTRY_DATA_CHANGED(za->entry+index)) {
if (za->entry[index].source->f(za->entry[index].source->ud,
- st, sizeof(*st), ZIP_CMD_STAT) < 0) {
+ st, sizeof(*st), ZIP_SOURCE_STAT) < 0) {
_zip_error_set(&za->error, ZIP_ER_CHANGED, 0);
return -1;
}
diff --git a/lib/zip_unchange_data.c b/lib/zip_unchange_data.c
index 6a45074..f8a3f19 100644
--- a/lib/zip_unchange_data.c
+++ b/lib/zip_unchange_data.c
@@ -1,5 +1,5 @@
/*
- $NiH: zip_unchange_data.c,v 1.13 2004/11/18 15:04:06 wiz Exp $
+ $NiH: zip_unchange_data.c,v 1.14 2004/11/30 23:02:47 wiz Exp $
zip_unchange_data.c -- undo helper function
Copyright (C) 1999, 2004 Dieter Baron and Thomas Klausner
@@ -43,7 +43,7 @@
_zip_unchange_data(struct zip_entry *ze)
{
if (ze->source) {
- (void)ze->source->f(ze->source->ud, NULL, 0, ZIP_CMD_FREE);
+ (void)ze->source->f(ze->source->ud, NULL, 0, ZIP_SOURCE_FREE);
free(ze->source);
ze->source = NULL;
}
diff --git a/lib/zipint.h b/lib/zipint.h
index 9072c8e..91c24a4 100644
--- a/lib/zipint.h
+++ b/lib/zipint.h
@@ -2,7 +2,7 @@
#define _HAD_ZIPINT_H
/*
- $NiH: zipint.h,v 1.34 2004/11/30 22:19:38 wiz Exp $
+ $NiH: zipint.h,v 1.35 2004/11/30 23:02:48 wiz Exp $
zipint.h -- internal declarations.
Copyright (C) 1999, 2003, 2004 Dieter Baron and Thomas Klausner
@@ -146,7 +146,7 @@
struct zip_source {
- zip_read_func f;
+ zip_source_callback f;
void *ud;
};