From 7838176ef81684feff9f3b7a50505021c31f647d Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Thu, 30 Jan 2025 09:15:40 +0000 Subject: [PATCH] compress: Automatically detect gzip-compressed data Signed-off-by: Michael Tremer --- src/pakfire/compress.c | 2 ++ tests/libpakfire/compress.c | 1 + 2 files changed, 3 insertions(+) diff --git a/src/pakfire/compress.c b/src/pakfire/compress.c index 2a3ae4dd..31151631 100644 --- a/src/pakfire/compress.c +++ b/src/pakfire/compress.c @@ -55,6 +55,8 @@ const struct compressor { size_t magic_length; FILE* (*open)(FILE* f, const char* mode); } compressors[] = { + // Gzip + { { 0x1f, 0x8b }, 2, pakfire_gzfopen, }, // XZ { { 0xFD, '7', 'z', 'X', 'Z', 0x00 }, 6, pakfire_xzfopen, }, // ZSTD diff --git a/tests/libpakfire/compress.c b/tests/libpakfire/compress.c index 3673f7d6..abeca34e 100644 --- a/tests/libpakfire/compress.c +++ b/tests/libpakfire/compress.c @@ -117,6 +117,7 @@ static int test_zstdfopen_write(const struct test* t) { } static int test_xfopen(const struct test* t) { + ASSERT_SUCCESS(read_test(t, pakfire_xfopen, "data/compress/data.gz")); ASSERT_SUCCESS(read_test(t, pakfire_xfopen, "data/compress/data.xz")); ASSERT_SUCCESS(read_test(t, pakfire_xfopen, "data/compress/data.zst")); -- 2.39.5