From d65a3ae8790ae28a90f0ebcf0bc4dc078c67dc35 Mon Sep 17 00:00:00 2001 From: jakob Date: Sun, 19 Feb 2017 20:49:43 -0500 Subject: Implemented eliF parsing. --- src/table.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/table.h') diff --git a/src/table.h b/src/table.h index 488e67f..c7c85bb 100644 --- a/src/table.h +++ b/src/table.h @@ -37,6 +37,7 @@ struct segment { struct table_entry { bool encrypted; /* Whether or not it's encrypted. */ bool compressed; /* Whether or not it's compressed. */ + char *filename; /* String containing file's name. */ uint32_t key; /* File-specific key for encryption. */ uint64_t ctime; /* Timestamp of creation time. */ uint64_t segment_count; /* Number of segments. */ @@ -49,6 +50,12 @@ struct table_entry { in the archive's table section. */ struct table_entry *parse_table(struct stream *s); +/* Reads the contents of an eliF chunk. If there is an entry with a + matching key in the linked list specified by `root`, that structure + will be modified. Otherwise, a new entry will be created and appended + to the linked list. */ +void read_elif(struct stream *s, struct table_entry *root); + /* Inserts `e` to the end of the linked list specified by `root`. */ void entry_append(struct table_entry *root, struct table_entry *e); -- cgit v1.3