diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/data_writer.h | 2 | ||||
-rw-r--r-- | include/sqfs/io.h | 14 | ||||
-rw-r--r-- | include/sqfs/predef.h | 1 | ||||
-rw-r--r-- | include/tar.h | 3 | ||||
-rw-r--r-- | include/util.h | 8 |
5 files changed, 18 insertions, 10 deletions
diff --git a/include/data_writer.h b/include/data_writer.h index c9e6f20..c9b416c 100644 --- a/include/data_writer.h +++ b/include/data_writer.h @@ -98,7 +98,7 @@ int write_data_from_file(data_writer_t *data, file_info_t *fi, Returns 0 on success, prints errors to stderr. */ int write_data_from_fd_condensed(data_writer_t *data, file_info_t *fi, - int infd, sparse_map_t *map, int flags); + int infd, sqfs_sparse_map_t *map, int flags); data_writer_stats_t *data_writer_get_stats(data_writer_t *data); diff --git a/include/sqfs/io.h b/include/sqfs/io.h index 9784113..cf6f1fa 100644 --- a/include/sqfs/io.h +++ b/include/sqfs/io.h @@ -120,6 +120,20 @@ struct sqfs_file_t { int (*truncate)(sqfs_file_t *file, uint64_t size); }; +/** + * @struct sqfs_sparse_map_t + * + * @brief Describes the layout of a sparse file. + * + * This structure is part of a linked list that indicates where the actual + * data is located in a sparse file. + */ +struct sqfs_sparse_map_t { + sqfs_sparse_map_t *next; + uint64_t offset; + uint64_t count; +}; + #ifdef __cplusplus extern "C" { #endif diff --git a/include/sqfs/predef.h b/include/sqfs/predef.h index 7aac1a8..95d907f 100644 --- a/include/sqfs/predef.h +++ b/include/sqfs/predef.h @@ -68,6 +68,7 @@ typedef struct sqfs_meta_reader_t sqfs_meta_reader_t; typedef struct sqfs_meta_writer_t sqfs_meta_writer_t; typedef struct sqfs_xattr_reader_t sqfs_xattr_reader_t; typedef struct sqfs_file_t sqfs_file_t; +typedef struct sqfs_sparse_map_t sqfs_sparse_map_t; typedef struct sqfs_fragment_t sqfs_fragment_t; typedef struct sqfs_dir_header_t sqfs_dir_header_t; diff --git a/include/tar.h b/include/tar.h index 44db5fe..38f6289 100644 --- a/include/tar.h +++ b/include/tar.h @@ -13,6 +13,7 @@ #include <stdbool.h> #include <stdint.h> +#include "sqfs/io.h" #include "util.h" typedef struct { @@ -74,7 +75,7 @@ typedef struct { struct stat sb; char *name; char *link_target; - sparse_map_t *sparse; + sqfs_sparse_map_t *sparse; uint64_t actual_size; uint64_t record_size; bool unknown_record; diff --git a/include/util.h b/include/util.h index fb927b5..5fb5f9b 100644 --- a/include/util.h +++ b/include/util.h @@ -39,14 +39,6 @@ #error Cannot determine maximum value of size_t #endif - -/* layout structure for sparse files, indicating where the actual data is */ -typedef struct sparse_map_t { - struct sparse_map_t *next; - uint64_t offset; - uint64_t count; -} sparse_map_t; - /* A wrapper around the write() system call. It retries the write if it is interrupted by a signal or only part of the data was written. Returns 0 |