aboutsummaryrefslogtreecommitdiff
path: root/include/tar.h
diff options
context:
space:
mode:
authorDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-09-25 17:47:19 +0200
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-09-25 17:47:19 +0200
commit3511b1fa7c6f71c579e161951e945904e552e1d9 (patch)
tree55fa94e5daef7bcc8e4b650f27d05af49fd1b02d /include/tar.h
parent4d79f55f4a626a3cfd8bd18673aa29b48b16e137 (diff)
Remove condensed sparse file handling from libsquashfs
This only exists for tar2sqfs. Move the sparse file map to libtar and add the ability to do this into the stind sqfs_file_t abstraction, so it acts like a normal file but internally stitches the data together from the sparse implementation. Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'include/tar.h')
-rw-r--r--include/tar.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/include/tar.h b/include/tar.h
index 38f6289..45457da 100644
--- a/include/tar.h
+++ b/include/tar.h
@@ -8,13 +8,17 @@
#define TAR_H
#include "config.h"
+#include "util.h"
#include <sys/stat.h>
#include <stdbool.h>
#include <stdint.h>
-#include "sqfs/io.h"
-#include "util.h"
+typedef struct sparse_map_t {
+ struct sparse_map_t *next;
+ uint64_t offset;
+ uint64_t count;
+} sparse_map_t;
typedef struct {
char name[100];
@@ -75,7 +79,7 @@ typedef struct {
struct stat sb;
char *name;
char *link_target;
- sqfs_sparse_map_t *sparse;
+ sparse_map_t *sparse;
uint64_t actual_size;
uint64_t record_size;
bool unknown_record;