summaryrefslogtreecommitdiff
path: root/lib/comp/gzip.c
diff options
context:
space:
mode:
authorDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-05-06 12:09:56 +0200
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-05-06 12:15:44 +0200
commitd5068781ec2528f88aaa92fbc9a5b9c256d53499 (patch)
tree8eac6ec1a02f12e71ec97b1cf66113f37df6d508 /lib/comp/gzip.c
parentcbcf86dde27767682483985e42f7ca49e1d3a208 (diff)
Implement reading and writing of compressor options
- gensquashfs simply asks the backend compressor to write its options to the file and does accounting - rdsquasfs simply asks the backend compressor to transparentyl snort the options from the file - not implemented in any compressor backend yet Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'lib/comp/gzip.c')
-rw-r--r--lib/comp/gzip.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/comp/gzip.c b/lib/comp/gzip.c
index ea634b8..ea86f98 100644
--- a/lib/comp/gzip.c
+++ b/lib/comp/gzip.c
@@ -29,6 +29,21 @@ static void gzip_destroy(compressor_t *base)
free(gzip);
}
+static int gzip_write_options(compressor_t *base, int fd)
+{
+ (void)base;
+ (void)fd;
+ return 0;
+}
+
+static int gzip_read_options(compressor_t *base, int fd)
+{
+ (void)base;
+ (void)fd;
+ fputs("gzip extra options are not yet implemented\n", stderr);
+ return -1;
+}
+
static ssize_t gzip_do_block(compressor_t *base, const uint8_t *in,
size_t size, uint8_t *out, size_t outsize)
{
@@ -90,6 +105,8 @@ compressor_t *create_gzip_compressor(bool compress, size_t block_size)
gzip->block_size = block_size;
base->do_block = gzip_do_block;
base->destroy = gzip_destroy;
+ base->write_options = gzip_write_options;
+ base->read_options = gzip_read_options;
if (compress) {
ret = deflateInit(&gzip->strm, Z_BEST_COMPRESSION);