diff --git a/common/filetype.c b/common/filetype.c index c8f3582..d98a60e 100644 --- a/common/filetype.c +++ b/common/filetype.c @@ -57,6 +57,7 @@ [filetype_ch_image] = { "TI OMAP CH boot image", "ch-image" }, [filetype_ch_image_be] = { "TI OMAP CH boot image (big endian)", "ch-image-be" }, + [filetype_xz_compressed] = { "XZ compressed", "xz" }, [filetype_exe] = { "MS-DOS executable", "exe" }, }; @@ -224,6 +225,9 @@ if (buf8[0] == 'B' && buf8[1] == 'Z' && buf8[2] == 'h' && buf8[3] > '0' && buf8[3] <= '9') return filetype_bzip2; + if (buf8[0] == 0xfd && buf8[1] == 0x37 && buf8[2] == 0x7a && + buf8[3] == 0x58 && buf8[4] == 0x5a && buf8[5] == 0x00) + return filetype_xz_compressed; if (buf[0] == be32_to_cpu(0xd00dfeed)) return filetype_oftree; if (strncmp(buf8, "ANDROID!", 8) == 0) diff --git a/include/filetype.h b/include/filetype.h index eedf4b4..ac71775 100644 --- a/include/filetype.h +++ b/include/filetype.h @@ -33,6 +33,7 @@ filetype_ch_image, filetype_ch_image_be, filetype_exe, + filetype_xz_compressed, filetype_max, };