summaryrefslogtreecommitdiffstats
path: root/src/ustar.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/ustar.h')
-rw-r--r--src/ustar.h20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/ustar.h b/src/ustar.h
index a6959c7..a1c5e75 100644
--- a/src/ustar.h
+++ b/src/ustar.h
@@ -20,11 +20,23 @@
#ifndef OPKG_OPK_USTAR_H_
#define OPKG_OPK_USTAR_H_
-unsigned char *
-opkg_opk_ustar_read(struct opkg_opk_gzip_state *gzip_state, const char *member);
+struct opkg_opk_ustar;
+
+struct opkg_opk_ustar_member {
+ char name[257]; /* prefix[155] + '/' + name[100] + '\0' */
+};
+
+struct opkg_opk_ustar *
+opkg_opk_ustar_init(struct opkg_opk_gzip *gzip);
+
+int
+opkg_opk_ustar_list(struct opkg_opk_ustar *ustar,
+ struct opkg_opk_ustar_member *member);
+
+int
+opkg_opk_ustar_seek(struct opkg_opk_ustar *ustar, const char *member);
int
-opkg_opk_ustar_list(struct opkg_opk_gzip_state *gzip_state,
- void (*member)(const char *name));
+opkg_opk_ustar_read(struct opkg_opk_ustar *ustar, char *buffer, size_t *size);
#endif /* OPKG_OPK_USTAR_H_ */