From: Michael Schroeder Date: Thu, 19 Jul 2018 14:16:35 +0000 (+0200) Subject: Adapt to zchunk format change X-Git-Tag: 0.6.35~9 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c2b19518bc64c5038549db8b94a748bf48b85c0f;p=thirdparty%2Flibsolv.git Adapt to zchunk format change --- diff --git a/ext/solv_zchunk.c b/ext/solv_zchunk.c index 6df0caff..771726de 100644 --- a/ext/solv_zchunk.c +++ b/ext/solv_zchunk.c @@ -302,9 +302,9 @@ solv_zchunk_open(FILE *fp, unsigned int streamid) zck->data_chk_len = hdr_chk_len; #endif p += hdr_chk_len; /* skip data checksum */ - zck->flags = p[0] << 24 | p[1] << 16 | p[2] << 8 | p[3]; - p += 4; - if ((zck->flags & 0xfffffffe) != 0) + if ((p = getuint(p, zck->hdr_end, &zck->flags)) == 0) + return open_error(zck); + if ((zck->flags & ~(1)) != 0) return open_error(zck); if ((p = getuint(p, zck->hdr_end, &zck->comp)) == 0 || (zck->comp != 0 && zck->comp != 2)) return open_error(zck); /* only uncompressed + zstd */