summaryrefslogtreecommitdiff
path: root/zip.h
diff options
context:
space:
mode:
Diffstat (limited to 'zip.h')
-rw-r--r--zip.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/zip.h b/zip.h
new file mode 100644
index 0000000..9e56084
--- /dev/null
+++ b/zip.h
@@ -0,0 +1,25 @@
+#ifndef ZIP_H_
+#define ZIP_H_
+
+#include <stdint.h>
+#include <stdio.h>
+
+typedef struct {
+ uint64_t compressed_size;
+ uint64_t size;
+ uint64_t local_header_off;
+ char *name;
+ uint16_t compression_method;
+} zip_entry;
+
+typedef struct {
+ zip_entry *entries;
+ FILE *file;
+ uint32_t num_entries;
+} zip_file;
+
+zip_file *zip_open(char *filename);
+uint8_t *zip_read(zip_file *f, uint32_t index, size_t *out_size);
+void zip_close(zip_file *f);
+
+#endif //ZIP_H_ \ No newline at end of file