Comment 1 for bug 634154

Revision history for this message
In , pva (pva) wrote :

Hi. Altlinux uses rpm files which are packed with lzma. For example download[1] src.rpm and try to rpm2targz it - that fail. I've found inside lzma-4.32.7.tar.bz2 code to check if that's lzma archive:

int find_lzma_header(unsigned char *buf) {
    return (buf[0] < 0xE1
        && buf[0] == 0x5d
        && buf[4] < 0x20
        && (memcmp (buf + 10 , "\x00\x00\x00", 3) == 0
            || (memcmp (buf + 5, "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF", 8) == 0)));
}

and patched rpmoffset.c to check for lzma too (patch follows). Now it works, but it makes code not such nice as it was before... Patch follows.

[1] http://sisyphus.ru/ru/srpm/Sisyphus/man-pages-ru/get
[2] lzma-4.32.7/extra/scanlzma/scanlzma.c