diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2021-01-06 14:24:15 +0100 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2021-01-19 04:03:37 +0100 |
commit | 405d133e7f0dc0f92f54f08ef6078208028448a1 (patch) | |
tree | b0a5ffca40f50f5c6a1c7e322434e9c0d4936a0e /lib/sqfs/block_processor/internal.h | |
parent | fe70d543c448ccb1adfb9a5d948820dc2c9d1e61 (diff) |
libsqfs: Add a sqfs_block_processor_create_ex function
This function creates a block processor from a structure describing it.
A stub implementation for the old sqfs_block_processor_create is added
that simply sets up such a struct and forwards the call.
The current version of the description struct only contains the exact
same parameters and a size field at the beginning.
This approach is supposed to make extending the range of parameters
easier without breaking ABI compatibillity.
Currently already planned are:
- Adding a sqfs_file_t pointer to double-check when deduplicating
fragments.
- When the scanning code reaches a usable state, add the abillity
to pass scanned fragment data, so the block processor can be used
for appending to an existing image.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'lib/sqfs/block_processor/internal.h')
-rw-r--r-- | lib/sqfs/block_processor/internal.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/sqfs/block_processor/internal.h b/lib/sqfs/block_processor/internal.h index 883385b..efea3d4 100644 --- a/lib/sqfs/block_processor/internal.h +++ b/lib/sqfs/block_processor/internal.h @@ -81,6 +81,9 @@ struct sqfs_block_processor_t { bool begin_called; + sqfs_file_t *file; + sqfs_compressor_t *uncmp; + int (*process_completed_block)(sqfs_block_processor_t *proc, sqfs_block_t *block); @@ -100,9 +103,6 @@ struct sqfs_block_processor_t { SQFS_INTERNAL void block_processor_cleanup(sqfs_block_processor_t *base); SQFS_INTERNAL int block_processor_init(sqfs_block_processor_t *base, - size_t max_block_size, - sqfs_compressor_t *cmp, - sqfs_block_writer_t *wr, - sqfs_frag_table_t *tbl); + const sqfs_block_processor_desc_t *desc); #endif /* INTERNAL_H */ |