aboutsummaryrefslogtreecommitdiff
path: root/src/proone_pack.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/proone_pack.h')
-rw-r--r--src/proone_pack.h15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/proone_pack.h b/src/proone_pack.h
index 35cd7ca..eaa63a1 100644
--- a/src/proone_pack.h
+++ b/src/proone_pack.h
@@ -4,14 +4,18 @@
#include "proone_protocol.h"
-typedef struct {
+
+typedef struct proone_bin_archive proone_bin_archive_t;
+typedef struct proone_unpack_bin_archive_result proone_unpack_bin_archive_result_t;
+
+struct proone_bin_archive {
size_t data_size;
uint8_t *data;
size_t nb_binaries;
proone_arch_t *arch_arr;
size_t *offset_arr;
size_t *size_arr;
-} proone_bin_archive_t;
+};
typedef enum {
PROONE_UNPACK_BIN_ARCHIVE_OK,
@@ -21,14 +25,12 @@ typedef enum {
PROONE_UNPACK_BIN_ARCHIVE_MEM_ERR
} proone_unpack_bin_archive_result_code_t;
-typedef struct {
+struct proone_unpack_bin_archive_result {
size_t data_size;
uint8_t *data;
- size_t raw_data_size;
- uint8_t *raw_data;
proone_unpack_bin_archive_result_code_t result;
long err;
-} proone_unpack_bin_archive_result_t;
+};
typedef enum {
PROONE_INDEX_BIN_ARCHIVE_OK,
@@ -36,6 +38,7 @@ typedef enum {
PROONE_INDEX_BIN_ARCHIVE_MEM_ERR
} proone_index_bin_archive_result_code_t;
+
void proone_init_bin_archive (proone_bin_archive_t *a);
void proone_init_unpack_bin_archive_result (proone_unpack_bin_archive_result_t *r);
proone_unpack_bin_archive_result_t proone_unpack_bin_archive (const int fd);