Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w4Gwk-0022DA-2W for pgsql-hackers@arkaria.postgresql.org; Sun, 22 Mar 2026 11:26:19 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w4Gvk-00D1zo-0Z for pgsql-hackers@arkaria.postgresql.org; Sun, 22 Mar 2026 11:25:16 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w4Gvj-00D1zg-1S for pgsql-hackers@lists.postgresql.org; Sun, 22 Mar 2026 11:25:16 +0000 Received: from mail-yx1-xb134.google.com ([2607:f8b0:4864:20::b134]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w4Gvf-00000000Sbs-3VtV for pgsql-hackers@lists.postgresql.org; Sun, 22 Mar 2026 11:25:14 +0000 Received: by mail-yx1-xb134.google.com with SMTP id 956f58d0204a3-64e8cdafeffso4714201d50.1 for ; Sun, 22 Mar 2026 04:25:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1774178710; cv=none; d=google.com; s=arc-20240605; b=C5QOF/Qop6ppL8x2RDJwCpQ7czjlc18+YVavWujjsDpKuj977XyB3Sealv3qcub4pe FZXorgIEYo9s0eTSakJ0s+zbpnIaBN7vEROd5h03SrLWaPv5RX+/1ODjAyxNUppH1aV6 Kzjaz0sn9+QGze7Ke6kQkVm2GRRQVV8KnQWgPAKZ+8fVmTx+fOHIJ4qDKqyXosBY33fk zf2JFt6418u4/OnpbmpaUV+GakOEWqojaZ1ISqXRXqqkiNWp13ajvKhNX6BoFb9eMZ0b T5CxYHfAG5DHk3I3P8i1fGDYQOlt8PXQAo8xtU+ZTikd5w0vk1dBly2F8v1QIsoEDFva wHHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=Z7qkyTt2Mi6fwBqAOJRtnrFztsWy3Guhn8CYX6Da2+M=; fh=M4UfPGRpyVwNuOs8iQW4hMYWvEHyTAbk13GXy0KTofI=; b=SkiI6UVRF5HAE4FVIAYCa+ZkU7n9UvTlGqMrrDbpPXFM1kp+3gNZQmU302c7e2mX2i wSof+UdGIwNoo9qr0MYzMC2GKjhJsQ+r28zTv+LG+/EkXOesXDHDYQzv3chHA6ZNm6N5 kbxP0TZOpLj1FOaye8+uulFjZOmmvm5trXq1UMkRI5rqnMrGDiQNN2xoCOeUXgqkRoIh DPxSdhopBJu+uuAqcMQNDo93GE8ANxdIRh+y+4gwQhSafe/xgsPSBH5OEMgHYBUdEbBX +5eo3KfsWtX1ytwZZjpulUDJNKg+zHtepjpVhVaaZkTgdKP7GFOdj65W9sVxzvrxqfAg iV5A==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dunslane-net.20230601.gappssmtp.com; s=20230601; t=1774178710; x=1774783510; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Z7qkyTt2Mi6fwBqAOJRtnrFztsWy3Guhn8CYX6Da2+M=; b=uozOuYyb3XV7rsah+A4VNja+x+LWBb6xFiRPJ75BL+l/8K6Go0mApIumRm5afBWgVY bOzp/9d0Ymz3hk5ou8W9XLkeCxhqjHCzlFqn60EEKP5EMq8UVsJZeX6NVPhsm/JdA7Td rjgZrDMCpNWB3h7K5Yk7rxS1aerjUVxn/MawOEckCTTtEbwiJrzgoD2k87o1AVyPitWP d+ukswGEe6ZGKD9QA9nf8JvaDClnJQYF1ealVRWRmPX4jPhw08bdZ9x7fnUPUxzzOm8p tuZwmq1KvCPkY1ZL8JkWCWrfQFME68RX5Ca92T+sYJKyJkYclsxQGsA0e+qLs8wjFPOK 8XJQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774178710; x=1774783510; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Z7qkyTt2Mi6fwBqAOJRtnrFztsWy3Guhn8CYX6Da2+M=; b=PcRRHwr7WIVR1aF9azCXkA51y/cvy09l5YwnT1y5andkK8aeFuAGO5K+36r1l3h/fP 0ZPtVFXTP1GzHbTlhU0WHS0xG3XTFWnNVx7EiqPamER043JhHUb7PiEEmf9XYX7Y1w4g hIru+CQH/7ESKdrrUUqGvKlkMgKEq0MqnyU3PiLrh0CD5z9Pw1A2TaMsScjHyCxml3ul OFwGla2bTvCnVk5ZYO4j4gJmbRXw3kDhzNk4mrGefhSchlKkKrMVp+t4feX/wQw6bNWc ccqvXI+tL2jbIoeHW1l3ULrcJEEAzumo8PJFVDMF4DioQ/HYsHhHKvLPTn6Ij1+yI7hg eUWQ== X-Forwarded-Encrypted: i=1; AJvYcCVzazqMuyfUkasPJKE7b1QsMKXazFlPOYpUdMcKwtkT3Jv+zqYK4ka27k6M3TGDecg8AfQLF4NsV9Nq0GXW@lists.postgresql.org X-Gm-Message-State: AOJu0YwXbqEU5nvFPHp+mu3/1LlpYrfm09ao5xpKD/EdMi2gZzjXbJUv jOtKfdg5A1yqZlUjti2yKMOLJJd0kBIxS76/pKJQArwLcmwYWCydwyqYZV/Xy/kc28lsLcAQl6K +9xhwJBr2VfBtVBfEOVbJvaWeFxgH8cvpmMfIPqy6SEKInugMyIGSyfS8oA== X-Gm-Gg: ATEYQzwbXhPTU+kjHeWLaIX7gOPXybnkZOGGaG9tqK+FggDsv8ornfZhB32IkTWPoQQ p0Z3ty3ASl9znW09m+4/XPpYGfgQLWQZmK+pkg8JiyHBq8h84PP45v6euFAreNFkq030iNgWgfr zB7TNK16kl1WR9LFFZZvxycXvfGSftU4tbL1a5awHz83BYUjIsyU0us1QfJ81bSYXJFhTYWVkwB oyJ7UENtSV3h3agmA1D9yZp5zM6r3ozahbdHb9ObVLNXm5lYa55pexmENuhaKzAy8hvcUpm7/yr cyrdqmf0 X-Received: by 2002:a05:690e:1289:b0:64d:6a5a:ac3d with SMTP id 956f58d0204a3-64eaad324e8mr7565500d50.39.1774178710136; Sun, 22 Mar 2026 04:25:10 -0700 (PDT) MIME-Version: 1.0 References: <401bf08a-c8f1-48e2-9a30-78deaa9fa7c5@dunslane.net> <9a2be101-!42c9-40dd-9860-aa12f06bf0e0@dunslane.net> <2178517.1774064942@sss.pgh.pa.us> <2197317.1774074840@sss.pgh.pa.us> <1663e08f-2711-42ed-a3c7-08632c852911@dunslane.net> <2250061.1774104346@sss.pgh.pa.us> <2555285.1774131847@sss.pgh.pa.us> <2609460.1774153487@sss.pgh.pa.us> In-Reply-To: <2609460.1774153487@sss.pgh.pa.us> From: Andrew Dunstan Date: Sun, 22 Mar 2026 07:24:56 -0400 X-Gm-Features: AaiRm53jTy1lBrt9PwHT2EbadY9TyAbTkjcBzoySbXSyEA8FCH4Sw3xK49wuoho Message-ID: Subject: Re: pg_waldump: support decoding of WAL inside tarfile To: Tom Lane Cc: Michael Paquier , Amul Sul , Zsolt Parragi , Robert Haas , Chao Li , Jakub Wartak , PostgreSQL Hackers Content-Type: multipart/mixed; boundary="000000000000c9dc0d064d9b2b37" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000c9dc0d064d9b2b37 Content-Type: multipart/alternative; boundary="000000000000c9dc0c064d9b2b35" --000000000000c9dc0c064d9b2b35 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sun, Mar 22, 2026 at 12:24=E2=80=AFAM Tom Lane wrote= : > I wrote: > > Unsurprisingly, applying this change to unmodified master results > > in the pg_waldump and pg_verifybackup tests falling over. More > > surprisingly, they still fall over after applying your fix to the > > decompressors, so there's some other source of garbage trailing > > data. I haven't figured out what. > > In the learn-something-new-every-day dept.: good ol' GNU tar itself > does that. By default, it zero-pads its output to a multiple of 10kB > after it's written the required terminator. Moreover, this behavior > is actually specified by POSIX: > > -x format > Specify the output archive format. The pax utility shall support > the following formats: > ... > ustar > The tar interchange format; see the EXTENDED DESCRIPTION > section. The default blocksize for this format for character > special archive files shall be 10240. Implementations shall > support all blocksize values less than or equal to 32256 that > are multiples of 512. > > So, astreamer_tar_parser_content's idea that it should disallow more > than 1024 bytes of trailer is completely wrong, which we would have > figured out long ago if the code attempting to enforce that weren't > completely broken. > > You could argue that this means the tar files our existing utilities > create aren't POSIX-compliant. I think it's all right though: we > can just say that we write these files with blocksize 1024 not > blocksize 10240, and tar-file readers are required to accept that > per the above spec text. > > However, this discourages me from editorializing on the file trailer > emitted by whatever wrote the tar file we are reading. I think > emitting it as-is is the most appropriate thing. So we should just > get rid of astreamer_tar_parser_content's nonfunctional error check > and not change its behavior otherwise. > > > OK, patch 5 of this set does that. I reworked your previous patches 2 and 3 slightly - mostly additional comments, and fixing a bug in use of sizeof(XLogLongPageHeader). Patch 4 here tries to fix the wrong use of cur_file in get_archive_wal_entry() cheers andrew --000000000000c9dc0c064d9b2b35 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Sun, Mar 22,= 2026 at 12:24=E2=80=AFAM Tom Lane <tgl@sss.pgh.pa.us> wrote:
I wrote:
> Unsurprisingly, applying this change to unmodified master results
> in the pg_waldump and pg_verifybackup tests falling over.=C2=A0 More > surprisingly, they still fall over after applying your fix to the
> decompressors, so there's some other source of garbage trailing > data.=C2=A0 I haven't figured out what.

In the learn-something-new-every-day dept.: good ol' GNU tar itself
does that.=C2=A0 By default, it zero-pads its output to a multiple of 10kB<= br> after it's written the required terminator.=C2=A0 Moreover, this behavi= or
is actually specified by POSIX:

=C2=A0 -x format
=C2=A0 =C2=A0 Specify the output archive format. The pax utility shall supp= ort
=C2=A0 =C2=A0 the following formats:
=C2=A0 =C2=A0 ...
=C2=A0 =C2=A0 ustar
=C2=A0 =C2=A0 =C2=A0 The tar interchange format; see the EXTENDED DESCRIPTI= ON
=C2=A0 =C2=A0 =C2=A0 section. The default blocksize for this format for cha= racter
=C2=A0 =C2=A0 =C2=A0 special archive files shall be 10240. Implementations = shall
=C2=A0 =C2=A0 =C2=A0 support all blocksize values less than or equal to 322= 56 that
=C2=A0 =C2=A0 =C2=A0 are multiples of 512.

So, astreamer_tar_parser_content's idea that it should disallow more than 1024 bytes of trailer is completely wrong, which we would have
figured out long ago if the code attempting to enforce that weren't
completely broken.

You could argue that this means the tar files our existing utilities
create aren't POSIX-compliant.=C2=A0 I think it's all right though:= we
can just say that we write these files with blocksize 1024 not
blocksize 10240, and tar-file readers are required to accept that
per the above spec text.

However, this discourages me from editorializing on the file trailer
emitted by whatever wrote the tar file we are reading.=C2=A0 I think
emitting it as-is is the most appropriate thing.=C2=A0 So we should just get rid of astreamer_tar_parser_content's nonfunctional error check
and not change its behavior otherwise.



OK, patch 5 of this set does that. I reworked your previous patches= 2 and 3 slightly - mostly additional comments, and fixing a bug in use of= =C2=A0sizeof(XLogLongPageHeader). Patch 4 here tries to fix the wrong use o= f cur_file in get_archive_wal_entry()

cheers
=

andrew=C2=A0
--000000000000c9dc0c064d9b2b35-- --000000000000c9dc0d064d9b2b37 Content-Type: text/x-patch; charset="US-ASCII"; name="v5-0003-Fix-init_archive_reader-to-not-depend-on-cur_file.patch" Content-Disposition: attachment; filename="v5-0003-Fix-init_archive_reader-to-not-depend-on-cur_file.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mn1o4fsw2 RnJvbSA1MWQ1M2IxNjZkZjdjOGVhZWJlNDk3NTZlMjQwODhjMTY3NjQ4MDdiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgRHVuc3RhbiA8YW5kcmV3QGR1bnNsYW5lLm5ldD4K RGF0ZTogU3VuLCAyMiBNYXIgMjAyNiAwNjo1MzoyNSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggdjUg My81XSBGaXggaW5pdF9hcmNoaXZlX3JlYWRlciB0byBub3QgZGVwZW5kIG9uIGN1cl9maWxlLgoK aW5pdF9hcmNoaXZlX3JlYWRlcigpIHJlbGllZCBvbiBwcml2YXRlSW5mby0+Y3VyX2ZpbGUgdG8g dHJhY2sgd2hpY2gKV0FMIHNlZ21lbnQgd2FzIGJlaW5nIHJlYWQsIGJ1dCBjdXJfZmlsZSBjYW4g YmVjb21lIE5VTEwgaWYgYSBtZW1iZXIKdHJhaWxlciBpcyBwcm9jZXNzZWQgZHVyaW5nIGEgcmVh ZF9hcmNoaXZlX2ZpbGUoKSBjYWxsLiAgVGhpcyBjb3VsZApjYXVzZSB1bnJlcHJvZHVjaWJsZSAi Y291bGQgbm90IGZpbmQgV0FMIGluIGFyY2hpdmUiIGZhaWx1cmVzLApwYXJ0aWN1bGFybHkgd2l0 aCBjb21wcmVzc2VkIGFyY2hpdmVzIHdoZXJlIGFsbCB0aGUgV0FMIGRhdGEgZml0cwppbiBhIHNt YWxsIG51bWJlciBvZiBjb21wcmVzc2VkIGJ5dGVzLgoKRml4IGJ5IHNjYW5uaW5nIHRoZSBoYXNo IHRhYmxlIGFmdGVyIGVhY2ggcmVhZCB0byBmaW5kIGFueSBjYWNoZWQKV0FMIHNlZ21lbnQgd2l0 aCBzdWZmaWNpZW50IGRhdGEsIGluc3RlYWQgb2YgZGVwZW5kaW5nIG9uIGN1cl9maWxlLgpBbHNv IHJlZHVjZSB0aGUgbWluaW11bSBkYXRhIHJlcXVpcmVtZW50IGZyb20gWExPR19CTENLU1ogdG8K c2l6ZW9mKFhMb2dMb25nUGFnZUhlYWRlckRhdGEpLCBzaW5jZSB3ZSBvbmx5IG5lZWQgdGhlIGxv bmcgcGFnZQpoZWFkZXIgdG8gZXh0cmFjdCB0aGUgc2VnbWVudCBzaXplLgoKQWRkIGEgc2FmZXR5 IGNvbW1lbnQgb24gY3VyX2ZpbGUgaW4gcGdfd2FsZHVtcC5oIHRvIGRvY3VtZW50IHRoYXQKaXQg Y2FuIGNoYW5nZSBkdXJpbmcgYSBzaW5nbGUgcmVhZF9hcmNoaXZlX2ZpbGUoKSBjYWxsLgoKQXV0 aG9yOiBUb20gTGFuZSA8dGdsQHNzcy5wZ2gucGEudXM+CgpEaXNjdXNzaW9uOiBodHRwczovL3Bv c3Rnci5lcy9tLzIxNzg1MTcuMTc3NDA2NDk0MkBzc3MucGdoLnBhLnVzCi0tLQogc3JjL2Jpbi9w Z193YWxkdW1wL2FyY2hpdmVfd2FsZHVtcC5jIHwgMjIgKysrKysrKysrKysrKysrKystLS0tLQog c3JjL2Jpbi9wZ193YWxkdW1wL3BnX3dhbGR1bXAuaCAgICAgIHwgIDkgKysrKysrKystCiAyIGZp bGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjL2Jpbi9wZ193YWxkdW1wL2FyY2hpdmVfd2FsZHVtcC5jIGIvc3JjL2Jpbi9wZ193YWxk dW1wL2FyY2hpdmVfd2FsZHVtcC5jCmluZGV4IGNkMDkyYTA1N2VmLi4zZmNlMjE4MzA5OSAxMDA2 NDQKLS0tIGEvc3JjL2Jpbi9wZ193YWxkdW1wL2FyY2hpdmVfd2FsZHVtcC5jCisrKyBiL3NyYy9i aW4vcGdfd2FsZHVtcC9hcmNoaXZlX3dhbGR1bXAuYwpAQCAtMTczLDE3ICsxNzMsMjkgQEAgaW5p dF9hcmNoaXZlX3JlYWRlcihYTG9nRHVtcFByaXZhdGUgKnByaXZhdGVJbmZvLAogCXByaXZhdGVJ bmZvLT5hcmNoaXZlX3dhbF9odGFiID0gQXJjaGl2ZWRXQUxfY3JlYXRlKDgsIE5VTEwpOwogCiAJ LyoKLQkgKiBSZWFkIHVudGlsIHdlIGhhdmUgYXQgbGVhc3Qgb25lIGZ1bGwgV0FMIHBhZ2UgKFhM T0dfQkxDS1NaIGJ5dGVzKSBmcm9tCi0JICogdGhlIGZpcnN0IFdBTCBzZWdtZW50IGluIHRoZSBh cmNoaXZlIHNvIHdlIGNhbiBleHRyYWN0IHRoZSBXQUwgc2VnbWVudAotCSAqIHNpemUgZnJvbSB0 aGUgbG9uZyBwYWdlIGhlYWRlci4KKwkgKiBSZWFkIHVudGlsIHdlIGhhdmUgYXQgbGVhc3Qgb25l IFdBTCBzZWdtZW50IHdpdGggZW5vdWdoIGRhdGEgdG8gZXh0cmFjdAorCSAqIHRoZSBXQUwgc2Vn bWVudCBzaXplIGZyb20gdGhlIGxvbmcgcGFnZSBoZWFkZXIuCisJICoKKwkgKiBXZSBtdXN0IG5v dCByZWx5IG9uIGN1cl9maWxlIGhlcmUsIGJlY2F1c2UgaXQgY2FuIGJlY29tZSBOVUxMIGlmIGEK KwkgKiBtZW1iZXIgdHJhaWxlciBpcyBwcm9jZXNzZWQgZHVyaW5nIGEgcmVhZF9hcmNoaXZlX2Zp bGUoKSBjYWxsLiBJbnN0ZWFkLAorCSAqIHNjYW4gdGhlIGhhc2ggdGFibGUgYWZ0ZXIgZWFjaCBy ZWFkIHRvIGZpbmQgYW55IGVudHJ5IHdpdGggc3VmZmljaWVudAorCSAqIGRhdGEuCiAJICovCi0J d2hpbGUgKGVudHJ5ID09IE5VTEwgfHwgZW50cnktPmJ1Zi0+bGVuIDwgWExPR19CTENLU1opCisJ d2hpbGUgKGVudHJ5ID09IE5VTEwpCiAJeworCQlBcmNoaXZlZFdBTF9pdGVyYXRvciBpdGVyOwor CiAJCWlmICghcmVhZF9hcmNoaXZlX2ZpbGUocHJpdmF0ZUluZm8sIFhMT0dfQkxDS1NaKSkKIAkJ CXBnX2ZhdGFsKCJjb3VsZCBub3QgZmluZCBXQUwgaW4gYXJjaGl2ZSBcIiVzXCIiLAogCQkJCQkg cHJpdmF0ZUluZm8tPmFyY2hpdmVfbmFtZSk7CiAKLQkJZW50cnkgPSBwcml2YXRlSW5mby0+Y3Vy X2ZpbGU7CisJCUFyY2hpdmVkV0FMX3N0YXJ0X2l0ZXJhdGUocHJpdmF0ZUluZm8tPmFyY2hpdmVf d2FsX2h0YWIsICZpdGVyKTsKKwkJd2hpbGUgKChlbnRyeSA9IEFyY2hpdmVkV0FMX2l0ZXJhdGUo cHJpdmF0ZUluZm8tPmFyY2hpdmVfd2FsX2h0YWIsCisJCQkJCQkJCQkJCSZpdGVyKSkgIT0gTlVM TCkKKwkJeworCQkJaWYgKGVudHJ5LT5yZWFkX2xlbiA+PSBzaXplb2YoWExvZ0xvbmdQYWdlSGVh ZGVyRGF0YSkpCisJCQkJYnJlYWs7CisJCX0KIAl9CiAKIAkvKiBFeHRyYWN0IHRoZSBXQUwgc2Vn bWVudCBzaXplIGZyb20gdGhlIGxvbmcgcGFnZSBoZWFkZXIgKi8KZGlmZiAtLWdpdCBhL3NyYy9i aW4vcGdfd2FsZHVtcC9wZ193YWxkdW1wLmggYi9zcmMvYmluL3BnX3dhbGR1bXAvcGdfd2FsZHVt cC5oCmluZGV4IGNkZTdjNmNhM2YyLi5jYTBkZmQ5NzE2OCAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9w Z193YWxkdW1wL3BnX3dhbGR1bXAuaAorKysgYi9zcmMvYmluL3BnX3dhbGR1bXAvcGdfd2FsZHVt cC5oCkBAIC00NCw3ICs0NCwxNCBAQCB0eXBlZGVmIHN0cnVjdCBYTG9nRHVtcFByaXZhdGUKIAlT aXplCQlhcmNoaXZlX3JlYWRfYnVmX3NpemU7CiAjZW5kaWYKIAotCS8qIFdoYXQgdGhlIGFyY2hp dmUgc3RyZWFtZXIgaXMgY3VycmVudGx5IHJlYWRpbmcgKi8KKwkvKgorCSAqIFRoZSBidWZmZXIg Zm9yIHRoZSBXQUwgZmlsZSB0aGUgYXJjaGl2ZSBzdHJlYW1lciBpcyBjdXJyZW50bHkgcmVhZGlu ZywKKwkgKiBvciBOVUxMIGlmIG5vbmUuICBJdCBpcyBxdWl0ZSByaXNreSB0byBleGFtaW5lIHRo aXMgYW55d2hlcmUgZXhjZXB0IGluCisJICogYXN0cmVhbWVyX3dhbGR1bXBfY29udGVudCgpLCBz aW5jZSBpdCBjYW4gY2hhbmdlIG11bHRpcGxlIHRpbWVzIGR1cmluZworCSAqIGEgc2luZ2xlIHJl YWRfYXJjaGl2ZV9maWxlKCkgY2FsbC4gIEhvd2V2ZXIsIGl0IGlzIHNhZmUgdG8gYXNzdW1lIHRo YXQKKwkgKiBpZiBjdXJfZmlsZSBpcyBkaWZmZXJlbnQgZnJvbSBhIHBhcnRpY3VsYXIgQXJjaGl2 ZWRXQUxGaWxlIG9mIGludGVyZXN0LAorCSAqIHRoZW4gdGhlIGFyY2hpdmUgc3RyZWFtZXIgaGFz IGZpbmlzaGVkIHJlYWRpbmcgdGhhdCBmaWxlLgorCSAqLwogCXN0cnVjdCBBcmNoaXZlZFdBTEZp bGUgKmN1cl9maWxlOwogCiAJLyoKLS0gCjIuNDMuMAoK --000000000000c9dc0d064d9b2b37 Content-Type: text/x-patch; charset="US-ASCII"; name="v5-0001-Fix-finalization-of-decompressor-astreamers.patch" Content-Disposition: attachment; filename="v5-0001-Fix-finalization-of-decompressor-astreamers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mn1o4ft14 RnJvbSA5OTc4MzU5NzcxYzE0YjQxMTcwNGQ4MDhhYmMwZjYwMjExOWYwYTlmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgRHVuc3RhbiA8YW5kcmV3QGR1bnNsYW5lLm5ldD4K RGF0ZTogU3VuLCAyMiBNYXIgMjAyNiAwNTozMToxNCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggdjUg MS81XSBGaXggZmluYWxpemF0aW9uIG9mIGRlY29tcHJlc3NvciBhc3RyZWFtZXJzLgoKU2VuZCB0 aGUgY29ycmVjdCBhbW91bnQgb2YgZGF0YSB0byB0aGUgbmV4dCBhc3RyZWFtZXIsIG5vdCB0aGUK d2hvbGUgYWxsb2NhdGVkIGJ1ZmZlciBzaXplLiAgSXQncyB1bmNsZWFyIGhvdyB3ZSBtaXNzZWQg dGhpcyBidWc7CnBlcmhhcHMgdGhlIHVzZS1jYXNlcyBzbyBmYXIgYXJlIGluc2Vuc2l0aXZlIHRv IHRyYWlsaW5nIGdhcmJhZ2UuCgpBdXRob3I6IEFuZHJldyBEdW5zdGFuIDxhbmRyZXdAZHVuc2xh bmUubmV0PgoKRGlzY3Vzc2lvbjogaHR0cHM6Ly9wb3N0Z3IuZXMvbS8yMTc4NTE3LjE3NzQwNjQ5 NDJAc3NzLnBnaC5wYS51cwotLS0KIHNyYy9mZV91dGlscy9hc3RyZWFtZXJfZ3ppcC5jIHwgOSAr KysrKy0tLS0KIHNyYy9mZV91dGlscy9hc3RyZWFtZXJfbHo0LmMgIHwgOSArKysrKy0tLS0KIHNy Yy9mZV91dGlscy9hc3RyZWFtZXJfenN0ZC5jIHwgMiArLQogMyBmaWxlcyBjaGFuZ2VkLCAxMSBp bnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9mZV91dGlscy9h c3RyZWFtZXJfZ3ppcC5jIGIvc3JjL2ZlX3V0aWxzL2FzdHJlYW1lcl9nemlwLmMKaW5kZXggMmUw ODBjMzdhNTguLmRmMzkyZjY3Y2FiIDEwMDY0NAotLS0gYS9zcmMvZmVfdXRpbHMvYXN0cmVhbWVy X2d6aXAuYworKysgYi9zcmMvZmVfdXRpbHMvYXN0cmVhbWVyX2d6aXAuYwpAQCAtMzQ3LDEwICsz NDcsMTEgQEAgYXN0cmVhbWVyX2d6aXBfZGVjb21wcmVzc29yX2ZpbmFsaXplKGFzdHJlYW1lciAq c3RyZWFtZXIpCiAJICogRW5kIG9mIHRoZSBzdHJlYW0sIGlmIHRoZXJlIGlzIHNvbWUgcGVuZGlu ZyBkYXRhIGluIG91dHB1dCBidWZmZXJzIHRoZW4KIAkgKiB3ZSBtdXN0IGZvcndhcmQgaXQgdG8g bmV4dCBzdHJlYW1lci4KIAkgKi8KLQlhc3RyZWFtZXJfY29udGVudChteXN0cmVhbWVyLT5iYXNl LmJic19uZXh0LCBOVUxMLAotCQkJCQkgIG15c3RyZWFtZXItPmJhc2UuYmJzX2J1ZmZlci5kYXRh LAotCQkJCQkgIG15c3RyZWFtZXItPmJhc2UuYmJzX2J1ZmZlci5tYXhsZW4sCi0JCQkJCSAgQVNU UkVBTUVSX1VOS05PV04pOworCWlmIChteXN0cmVhbWVyLT5ieXRlc193cml0dGVuID4gMCkKKwkJ YXN0cmVhbWVyX2NvbnRlbnQobXlzdHJlYW1lci0+YmFzZS5iYnNfbmV4dCwgTlVMTCwKKwkJCQkJ CSAgbXlzdHJlYW1lci0+YmFzZS5iYnNfYnVmZmVyLmRhdGEsCisJCQkJCQkgIG15c3RyZWFtZXIt PmJ5dGVzX3dyaXR0ZW4sCisJCQkJCQkgIEFTVFJFQU1FUl9VTktOT1dOKTsKIAogCWFzdHJlYW1l cl9maW5hbGl6ZShteXN0cmVhbWVyLT5iYXNlLmJic19uZXh0KTsKIH0KZGlmZiAtLWdpdCBhL3Ny Yy9mZV91dGlscy9hc3RyZWFtZXJfbHo0LmMgYi9zcmMvZmVfdXRpbHMvYXN0cmVhbWVyX2x6NC5j CmluZGV4IDJiYzMyYjQyODc5Li42MDVjMTg4MDA3YiAxMDA2NDQKLS0tIGEvc3JjL2ZlX3V0aWxz L2FzdHJlYW1lcl9sejQuYworKysgYi9zcmMvZmVfdXRpbHMvYXN0cmVhbWVyX2x6NC5jCkBAIC0z OTcsMTAgKzM5NywxMSBAQCBhc3RyZWFtZXJfbHo0X2RlY29tcHJlc3Nvcl9maW5hbGl6ZShhc3Ry ZWFtZXIgKnN0cmVhbWVyKQogCSAqIEVuZCBvZiB0aGUgc3RyZWFtLCBpZiB0aGVyZSBpcyBzb21l IHBlbmRpbmcgZGF0YSBpbiBvdXRwdXQgYnVmZmVycyB0aGVuCiAJICogd2UgbXVzdCBmb3J3YXJk IGl0IHRvIG5leHQgc3RyZWFtZXIuCiAJICovCi0JYXN0cmVhbWVyX2NvbnRlbnQobXlzdHJlYW1l ci0+YmFzZS5iYnNfbmV4dCwgTlVMTCwKLQkJCQkJICBteXN0cmVhbWVyLT5iYXNlLmJic19idWZm ZXIuZGF0YSwKLQkJCQkJICBteXN0cmVhbWVyLT5iYXNlLmJic19idWZmZXIubWF4bGVuLAotCQkJ CQkgIEFTVFJFQU1FUl9VTktOT1dOKTsKKwlpZiAobXlzdHJlYW1lci0+Ynl0ZXNfd3JpdHRlbiA+ IDApCisJCWFzdHJlYW1lcl9jb250ZW50KG15c3RyZWFtZXItPmJhc2UuYmJzX25leHQsIE5VTEws CisJCQkJCQkgIG15c3RyZWFtZXItPmJhc2UuYmJzX2J1ZmZlci5kYXRhLAorCQkJCQkJICBteXN0 cmVhbWVyLT5ieXRlc193cml0dGVuLAorCQkJCQkJICBBU1RSRUFNRVJfVU5LTk9XTik7CiAKIAlh c3RyZWFtZXJfZmluYWxpemUobXlzdHJlYW1lci0+YmFzZS5iYnNfbmV4dCk7CiB9CmRpZmYgLS1n aXQgYS9zcmMvZmVfdXRpbHMvYXN0cmVhbWVyX3pzdGQuYyBiL3NyYy9mZV91dGlscy9hc3RyZWFt ZXJfenN0ZC5jCmluZGV4IGYyNmFiY2ZkMGZhLi40YjQzYWI3OTVlMyAxMDA2NDQKLS0tIGEvc3Jj L2ZlX3V0aWxzL2FzdHJlYW1lcl96c3RkLmMKKysrIGIvc3JjL2ZlX3V0aWxzL2FzdHJlYW1lcl96 c3RkLmMKQEAgLTM0Nyw3ICszNDcsNyBAQCBhc3RyZWFtZXJfenN0ZF9kZWNvbXByZXNzb3JfZmlu YWxpemUoYXN0cmVhbWVyICpzdHJlYW1lcikKIAlpZiAobXlzdHJlYW1lci0+enN0ZF9vdXRCdWYu cG9zID4gMCkKIAkJYXN0cmVhbWVyX2NvbnRlbnQobXlzdHJlYW1lci0+YmFzZS5iYnNfbmV4dCwg TlVMTCwKIAkJCQkJCSAgbXlzdHJlYW1lci0+YmFzZS5iYnNfYnVmZmVyLmRhdGEsCi0JCQkJCQkg IG15c3RyZWFtZXItPmJhc2UuYmJzX2J1ZmZlci5tYXhsZW4sCisJCQkJCQkgIG15c3RyZWFtZXIt PnpzdGRfb3V0QnVmLnBvcywKIAkJCQkJCSAgQVNUUkVBTUVSX1VOS05PV04pOwogCiAJYXN0cmVh bWVyX2ZpbmFsaXplKG15c3RyZWFtZXItPmJhc2UuYmJzX25leHQpOwotLSAKMi40My4wCgo= --000000000000c9dc0d064d9b2b37 Content-Type: text/x-patch; charset="US-ASCII"; name="v5-0004-Fix-get_archive_wal_entry-to-handle-cur_file-tran.patch" Content-Disposition: attachment; filename="v5-0004-Fix-get_archive_wal_entry-to-handle-cur_file-tran.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mn1o4fst1 RnJvbSA5MWVkMGU2OWE3ZGYwMGJlMTQ3NTQ4OTczYTgxNzIzMjI5OThiNTI4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgRHVuc3RhbiA8YW5kcmV3QGR1bnNsYW5lLm5ldD4K RGF0ZTogU3VuLCAyMiBNYXIgMjAyNiAwNjo1MzozNCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggdjUg NC81XSBGaXggZ2V0X2FyY2hpdmVfd2FsX2VudHJ5IHRvIGhhbmRsZSBjdXJfZmlsZQogdHJhbnNp dGlvbnMgcmVsaWFibHkuCgpBcyBub3RlZCBieSBUb20gTGFuZSwgZ2V0X2FyY2hpdmVfd2FsX2Vu dHJ5KCkgdXNlcyBjdXJfZmlsZSBpbiBhbgp1bnNhZmUgd2F5OiBhIHNpbmdsZSByZWFkX2FyY2hp dmVfZmlsZSgpIGNhbGwgY2FuIHRyaWdnZXIgbXVsdGlwbGUKYXN0cmVhbWVyIGNhbGxiYWNrcyB3 aGVuIGNvbXByZXNzaW9uIGlzIGVmZmVjdGl2ZSwgY2F1c2luZyBjdXJfZmlsZQp0byBjaGFuZ2Ug c2V2ZXJhbCB0aW1lcyAoZW50cnkgLT4gTlVMTCAtPiBuZXcgZW50cnkpIHdpdGhpbiBvbmUKY2Fs bC4gIFRoZSBvbGQgY29kZSBjYXB0dXJlZCBjdXJfZmlsZSBiZWZvcmUgdGhlIHJlYWQgYW5kIGNo ZWNrZWQKZm9yIGNoYW5nZXMgYWZ0ZXIsIGJ1dCB0aGlzIG1pc3NlZCBpbnRlcm1lZGlhdGUgdHJh bnNpdGlvbnMuICBUaGlzCmNvdWxkIGNhdXNlIHNwaWxsLWZpbGUgaGFuZGxlcyB0byBsZWFrIG9y IGRhdGEgdG8gbm90IGJlIGZsdXNoZWQKd2hlbiB0aGUgc3RyZWFtZXIgZmluaXNoZXMgb25lIHNl Z21lbnQgYW5kIHN0YXJ0cyBhbm90aGVyIHdpdGhpbgp0aGUgc2FtZSByZWFkLgoKUmVzdHJ1Y3R1 cmUgdGhlIHNwaWxsIGxvZ2ljIHRvIGV4cGxpY2l0bHkgdHJhY2sgdGhlIGVudHJ5IGJlaW5nCnNw aWxsZWQgKHNwaWxsX2VudHJ5KSBzZXBhcmF0ZWx5IGZyb20gY3VyX2ZpbGUsIGFuZCBkZXRlY3QK dHJhbnNpdGlvbnMgYXQgdGhlIHRvcCBvZiBlYWNoIGxvb3AgaXRlcmF0aW9uLiAgQWxzbyBlbnN1 cmUgc3BpbGwKZmlsZSBoYW5kbGVzIGFyZSBjbG9zZWQgb24gYm90aCBzdWNjZXNzIGFuZCBlcnJv ciBwYXRocy4KCkRpc2N1c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vMjE3ODUxNy4xNzc0MDY0 OTQyQHNzcy5wZ2gucGEudXMKLS0tCiBzcmMvYmluL3BnX3dhbGR1bXAvYXJjaGl2ZV93YWxkdW1w LmMgfCAxMTcgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNjkg aW5zZXJ0aW9ucygrKSwgNDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wZ193 YWxkdW1wL2FyY2hpdmVfd2FsZHVtcC5jIGIvc3JjL2Jpbi9wZ193YWxkdW1wL2FyY2hpdmVfd2Fs ZHVtcC5jCmluZGV4IDNmY2UyMTgzMDk5Li45M2VkODU2YzY3NCAxMDA2NDQKLS0tIGEvc3JjL2Jp bi9wZ193YWxkdW1wL2FyY2hpdmVfd2FsZHVtcC5jCisrKyBiL3NyYy9iaW4vcGdfd2FsZHVtcC9h cmNoaXZlX3dhbGR1bXAuYwpAQCAtNDYzLDExICs0NjMsMTggQEAgZnJlZV9hcmNoaXZlX3dhbF9l bnRyeShjb25zdCBjaGFyICpmbmFtZSwgWExvZ0R1bXBQcml2YXRlICpwcml2YXRlSW5mbykKICAq IGZvdW5kLiAgSWYgdGhlIGFyY2hpdmUgc3RyZWFtZXIgaXMgcmVhZGluZyBhIFdBTCBmaWxlIGZy b20gdGhlIGFyY2hpdmUgdGhhdAogICogaXMgbm90IGN1cnJlbnRseSBuZWVkZWQsIHRoYXQgZGF0 YSBpcyBzcGlsbGVkIHRvIGEgdGVtcG9yYXJ5IGZpbGUgZm9yIGxhdGVyCiAgKiByZXRyaWV2YWwu CisgKgorICogQmVjYXVzZSBhIHNpbmdsZSByZWFkX2FyY2hpdmVfZmlsZSgpIGNhbGwgbWF5IHRy aWdnZXIgbXVsdGlwbGUgYXN0cmVhbWVyCisgKiBjYWxsYmFja3MgKGVzcGVjaWFsbHkgd2hlbiBk YXRhIGNvbXByZXNzZXMgd2VsbCksIGN1cl9maWxlIGNhbiBjaGFuZ2UKKyAqIHNldmVyYWwgdGlt ZXMgd2l0aGluIG9uZSBjYWxsOiBmcm9tIG9uZSBlbnRyeSB0byBOVUxMIChtZW1iZXIgdHJhaWxl ciksCisgKiBhbmQgdGhlbiB0byBhIG5ldyBlbnRyeSAobmV4dCBtZW1iZXIgaGVhZGVyKS4gIFRo ZSBzcGlsbCBsb2dpYyBiZWxvdworICogaGFuZGxlcyB0aGlzIGJ5IGZsdXNoaW5nIGFuZCBjbG9z aW5nIHBlci1lbnRyeSBzdGF0ZSB3aGVuZXZlciB3ZSBkZXRlY3QKKyAqIHRoYXQgdGhlIHN0cmVh bWVyIGhhcyBtb3ZlZCBvbi4KICAqLwogc3RhdGljIEFyY2hpdmVkV0FMRmlsZSAqCiBnZXRfYXJj aGl2ZV93YWxfZW50cnkoY29uc3QgY2hhciAqZm5hbWUsIFhMb2dEdW1wUHJpdmF0ZSAqcHJpdmF0 ZUluZm8pCiB7Ci0JQXJjaGl2ZWRXQUxGaWxlICplbnRyeSA9IE5VTEw7CisJQXJjaGl2ZWRXQUxG aWxlICpzcGlsbF9lbnRyeSA9IE5VTEw7CiAJRklMRQkgICAqd3JpdGVfZnAgPSBOVUxMOwogCiAJ LyoKQEAgLTQ3Nyw2ICs0ODQsOCBAQCBnZXRfYXJjaGl2ZV93YWxfZW50cnkoY29uc3QgY2hhciAq Zm5hbWUsIFhMb2dEdW1wUHJpdmF0ZSAqcHJpdmF0ZUluZm8pCiAJICovCiAJd2hpbGUgKDEpCiAJ eworCQlBcmNoaXZlZFdBTEZpbGUgKmVudHJ5OworCiAJCS8qCiAJCSAqIFNlYXJjaCBoYXNoIHRh YmxlLgogCQkgKgpAQCAtNDg4LDY0ICs0OTcsNzYgQEAgZ2V0X2FyY2hpdmVfd2FsX2VudHJ5KGNv bnN0IGNoYXIgKmZuYW1lLCBYTG9nRHVtcFByaXZhdGUgKnByaXZhdGVJbmZvKQogCQllbnRyeSA9 IEFyY2hpdmVkV0FMX2xvb2t1cChwcml2YXRlSW5mby0+YXJjaGl2ZV93YWxfaHRhYiwgZm5hbWUp OwogCiAJCWlmIChlbnRyeSAhPSBOVUxMKQorCQl7CisJCQkvKiBDbG9zZSBhbnkgb3BlbiBzcGls bCBmaWxlIGJlZm9yZSByZXR1cm5pbmcuICovCisJCQlpZiAod3JpdGVfZnAgIT0gTlVMTCkKKwkJ CQlmY2xvc2Uod3JpdGVfZnApOwogCQkJcmV0dXJuIGVudHJ5OwotCi0JCS8qCi0JCSAqIENhcHR1 cmUgdGhlIGN1cnJlbnQgZW50cnkgYmVmb3JlIGNhbGxpbmcgcmVhZF9hcmNoaXZlX2ZpbGUoKSwK LQkJICogYmVjYXVzZSBjdXJfZmlsZSBtYXkgYWR2YW5jZSB0byBhIG5ldyBzZWdtZW50IGR1cmlu ZyBzdHJlYW1pbmcuIFdlCi0JCSAqIGhvbGQgdGhpcyByZWZlcmVuY2Ugc28gd2UgY2FuIGZsdXNo IGFueSByZW1haW5pbmcgYnVmZmVyIGRhdGEgYW5kCi0JCSAqIGNsb3NlIHRoZSB3cml0ZSBoYW5k bGUgb25jZSB3ZSBkZXRlY3QgdGhhdCBjdXJfZmlsZSBoYXMgbW92ZWQgb24uCi0JCSAqLwotCQll bnRyeSA9IHByaXZhdGVJbmZvLT5jdXJfZmlsZTsKLQotCQkvKgotCQkgKiBGZXRjaCBtb3JlIGRh dGEgZWl0aGVyIHdoZW4gbm8gY3VycmVudCBmaWxlIGlzIGJlaW5nIHRyYWNrZWQgb3IKLQkJICog d2hlbiBpdHMgYnVmZmVyIGhhcyBiZWVuIGZ1bGx5IGZsdXNoZWQgdG8gdGhlIHRlbXBvcmFyeSBm aWxlLgotCQkgKi8KLQkJaWYgKGVudHJ5ID09IE5VTEwgfHwgZW50cnktPmJ1Zi0+bGVuID09IDAp Ci0JCXsKLQkJCWlmICghcmVhZF9hcmNoaXZlX2ZpbGUocHJpdmF0ZUluZm8sIFJFQURfQ0hVTktf U0laRSkpCi0JCQkJYnJlYWs7CQkJLyogYXJjaGl2ZSBmaWxlIGVuZGVkICovCiAJCX0KIAogCQkv KgotCQkgKiBBcmNoaXZlIHN0cmVhbWVyIGlzIHJlYWRpbmcgYSBub24tV0FMIGZpbGUgb3IgYW4g aXJyZWxldmFudCBXQUwKLQkJICogZmlsZS4KLQkJICovCi0JCWlmIChlbnRyeSA9PSBOVUxMKQot CQkJY29udGludWU7Ci0KLQkJLyoKLQkJICogVGhlIHN0cmVhbWVyIGlzIHByb2R1Y2luZyBhIFdB TCBzZWdtZW50IHRoYXQgaXNuJ3QgdGhlIG9uZSBhc2tlZAotCQkgKiBmb3I7IGl0IG11c3QgYmUg YXJyaXZpbmcgb3V0IG9mIG9yZGVyLiAgU3BpbGwgaXRzIGRhdGEgdG8gZGlzayBzbwotCQkgKiBp dCBjYW4gYmUgcmVhZCBiYWNrIHdoZW4gbmVlZGVkLgotCQkgKi8KLQkJQXNzZXJ0KHN0cmNtcChm bmFtZSwgZW50cnktPmZuYW1lKSAhPSAwKTsKLQotCQkvKiBDcmVhdGUgYSB0ZW1wb3JhcnkgZmls ZSBpZiBvbmUgZG9lcyBub3QgYWxyZWFkeSBleGlzdCAqLwotCQlpZiAoIWVudHJ5LT5zcGlsbGVk KQotCQl7Ci0JCQl3cml0ZV9mcCA9IHByZXBhcmVfdG1wX3dyaXRlKGVudHJ5LT5mbmFtZSwgcHJp dmF0ZUluZm8pOwotCQkJZW50cnktPnNwaWxsZWQgPSB0cnVlOwotCQl9Ci0KLQkJLyogRmx1c2gg ZGF0YSBmcm9tIHRoZSBidWZmZXIgdG8gdGhlIGZpbGUgKi8KLQkJcGVyZm9ybV90bXBfd3JpdGUo ZW50cnktPmZuYW1lLCBlbnRyeS0+YnVmLCB3cml0ZV9mcCk7Ci0JCXJlc2V0U3RyaW5nSW5mbyhl bnRyeS0+YnVmKTsKLQotCQkvKgotCQkgKiBJZiBjdXJfZmlsZSBjaGFuZ2VkIHNpbmNlIHdlIGNh cHR1cmVkIGVudHJ5IGFib3ZlLCB0aGUgYXJjaGl2ZQotCQkgKiBzdHJlYW1lciBoYXMgZmluaXNo ZWQgdGhpcyBzZWdtZW50IGFuZCBtb3ZlZCBvbi4gIENsb3NlIGl0cyBzcGlsbAotCQkgKiBmaWxl IGhhbmRsZSBzbyBkYXRhIGlzIGZsdXNoZWQgdG8gZGlzayBiZWZvcmUgdGhlIG5leHQgc2VnbWVu dAotCQkgKiBzdGFydHMgd3JpdGluZyB0byBhIGRpZmZlcmVudCBoYW5kbGUuCisJCSAqIElmIHRo ZSBzdHJlYW1lciBoYXMgbW92ZWQgb24gdG8gYSBkaWZmZXJlbnQgZW50cnkgdGhhbiB0aGUgb25l IHdlCisJCSAqIHdlcmUgc3BpbGxpbmcsIGZsdXNoIGFueSByZW1haW5pbmcgZGF0YSBmb3IgdGhl IG9sZCBlbnRyeSBhbmQgY2xvc2UKKwkJICogaXRzIHNwaWxsIGZpbGUuCiAJCSAqLwotCQlpZiAo ZW50cnkgIT0gcHJpdmF0ZUluZm8tPmN1cl9maWxlICYmIHdyaXRlX2ZwICE9IE5VTEwpCisJCWlm IChzcGlsbF9lbnRyeSAhPSBOVUxMICYmIHNwaWxsX2VudHJ5ICE9IHByaXZhdGVJbmZvLT5jdXJf ZmlsZSkKIAkJeworCQkJaWYgKHNwaWxsX2VudHJ5LT5idWYtPmxlbiA+IDApCisJCQl7CisJCQkJ cGVyZm9ybV90bXBfd3JpdGUoc3BpbGxfZW50cnktPmZuYW1lLCBzcGlsbF9lbnRyeS0+YnVmLAor CQkJCQkJCQkgIHdyaXRlX2ZwKTsKKwkJCQlyZXNldFN0cmluZ0luZm8oc3BpbGxfZW50cnktPmJ1 Zik7CisJCQl9CiAJCQlmY2xvc2Uod3JpdGVfZnApOwogCQkJd3JpdGVfZnAgPSBOVUxMOworCQkJ c3BpbGxfZW50cnkgPSBOVUxMOwogCQl9CisKKwkJLyoKKwkJICogSWYgbm8gV0FMIGZpbGUgaXMg Y3VycmVudGx5IGJlaW5nIHN0cmVhbWVkIChjdXJfZmlsZSBpcyBOVUxMKSwgb3IKKwkJICogdGhl IGN1cnJlbnQgc3BpbGwgZW50cnkncyBidWZmZXIgaGFzIGJlZW4gZnVsbHkgZmx1c2hlZCwgd2Ug bmVlZAorCQkgKiBtb3JlIGRhdGEgZnJvbSB0aGUgYXJjaGl2ZS4KKwkJICovCisJCWlmIChwcml2 YXRlSW5mby0+Y3VyX2ZpbGUgPT0gTlVMTCB8fAorCQkJKHNwaWxsX2VudHJ5ICE9IE5VTEwgJiYg c3BpbGxfZW50cnktPmJ1Zi0+bGVuID09IDApKQorCQl7CisJCQlpZiAoIXJlYWRfYXJjaGl2ZV9m aWxlKHByaXZhdGVJbmZvLCBSRUFEX0NIVU5LX1NJWkUpKQorCQkJCWJyZWFrOwkJCS8qIGFyY2hp dmUgZnVsbHkgZXhoYXVzdGVkICovCisJCQljb250aW51ZTsJCQkvKiByZS1jaGVjayBoYXNoIHRh YmxlIGFuZCBjdXJfZmlsZSAqLworCQl9CisKKwkJLyoKKwkJICogY3VyX2ZpbGUgcG9pbnRzIHRv IGEgV0FMIHNlZ21lbnQgdGhhdCBpc24ndCB0aGUgb25lIGFza2VkIGZvcjsgaXQKKwkJICogbXVz dCBiZSBhcnJpdmluZyBvdXQgb2Ygb3JkZXIuICBTcGlsbCBpdHMgZGF0YSB0byBkaXNrIHNvIGl0 IGNhbiBiZQorCQkgKiByZWFkIGJhY2sgd2hlbiBuZWVkZWQuCisJCSAqLworCQlzcGlsbF9lbnRy eSA9IHByaXZhdGVJbmZvLT5jdXJfZmlsZTsKKwkJQXNzZXJ0KHN0cmNtcChmbmFtZSwgc3BpbGxf ZW50cnktPmZuYW1lKSAhPSAwKTsKKworCQkvKiBDcmVhdGUgYSB0ZW1wb3JhcnkgZmlsZSBpZiBv bmUgZG9lcyBub3QgYWxyZWFkeSBleGlzdCAqLworCQlpZiAoIXNwaWxsX2VudHJ5LT5zcGlsbGVk KQorCQl7CisJCQl3cml0ZV9mcCA9IHByZXBhcmVfdG1wX3dyaXRlKHNwaWxsX2VudHJ5LT5mbmFt ZSwgcHJpdmF0ZUluZm8pOworCQkJc3BpbGxfZW50cnktPnNwaWxsZWQgPSB0cnVlOworCQl9CisK KwkJLyogRmx1c2ggZGF0YSBmcm9tIHRoZSBidWZmZXIgdG8gdGhlIGZpbGUgKi8KKwkJcGVyZm9y bV90bXBfd3JpdGUoc3BpbGxfZW50cnktPmZuYW1lLCBzcGlsbF9lbnRyeS0+YnVmLCB3cml0ZV9m cCk7CisJCXJlc2V0U3RyaW5nSW5mbyhzcGlsbF9lbnRyeS0+YnVmKTsKKworCQkvKgorCQkgKiBS ZWFkIG1vcmUgZGF0YSBmcm9tIHRoZSBhcmNoaXZlLiAgVGhpcyBtYXkgYWRkIGRhdGEgdG8gdGhl IGN1cnJlbnQKKwkJICogc3BpbGxfZW50cnkncyBidWZmZXIsIGFkdmFuY2UgY3VyX2ZpbGUgdG8g YSBuZXcgZW50cnksIG9yIHNldAorCQkgKiBjdXJfZmlsZSB0byBOVUxMIChtZW1iZXIgdHJhaWxl cikuCisJCSAqLworCQlpZiAoIXJlYWRfYXJjaGl2ZV9maWxlKHByaXZhdGVJbmZvLCBSRUFEX0NI VU5LX1NJWkUpKQorCQkJYnJlYWs7CQkJCS8qIGFyY2hpdmUgZnVsbHkgZXhoYXVzdGVkICovCiAJ fQogCisJLyogQ2xvc2UgYW55IG9wZW4gc3BpbGwgZmlsZSBiZWZvcmUgZXJyb3Jpbmcgb3V0LiAq LworCWlmICh3cml0ZV9mcCAhPSBOVUxMKQorCQlmY2xvc2Uod3JpdGVfZnApOworCiAJLyogUmVx dWVzdGVkIFdBTCBzZWdtZW50IG5vdCBmb3VuZCAqLwogCXBnX2ZhdGFsKCJjb3VsZCBub3QgZmlu ZCBXQUwgXCIlc1wiIGluIGFyY2hpdmUgXCIlc1wiIiwKIAkJCSBmbmFtZSwgcHJpdmF0ZUluZm8t PmFyY2hpdmVfbmFtZSk7Ci0tIAoyLjQzLjAKCg== --000000000000c9dc0d064d9b2b37 Content-Type: text/x-patch; charset="US-ASCII"; name="v5-0002-Fix-failure-to-finalize-the-decompression-pipelin.patch" Content-Disposition: attachment; filename="v5-0002-Fix-failure-to-finalize-the-decompression-pipelin.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mn1o4fsz3 RnJvbSAwZGU1ZmQ5NzE2MDJhZTAwZmQzYmQ2MmNmNWRhMGQ4ZjBhM2NjZTVhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgRHVuc3RhbiA8YW5kcmV3QGR1bnNsYW5lLm5ldD4K RGF0ZTogU3VuLCAyMiBNYXIgMjAyNiAwNTozMjo0NSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggdjUg Mi81XSBGaXggZmFpbHVyZSB0byBmaW5hbGl6ZSB0aGUgZGVjb21wcmVzc2lvbiBwaXBlbGluZSBh dAogYXJjaGl2ZSBFT0YuCgphcmNoaXZlX3dhbGR1bXAuYyBjYWxsZWQgYXN0cmVhbWVyX2ZpbmFs aXplKCkgbm93aGVyZS4gIFRoaXMgbWVhbnQKdGhhdCBhbnkgZGF0YSByZXRhaW5lZCBpbiBkZWNv bXByZXNzaW9uIGJ1ZmZlcnMgYXQgdGhlIG1vbWVudCB3ZQpkZXRlY3QgYXJjaGl2ZSBFT0Ygd291 bGQgbmV2ZXIgcmVhY2ggYXN0cmVhbWVyX3dhbGR1bXBfY29udGVudCgpLApyZXN1bHRpbmcgaW4g c3VycHJpc2luZyBmYWlsdXJlcyBpZiB3ZSBhY3R1YWxseSBuZWVkIHRoZSBsYXN0IGZldwpieXRl cyBvZiB0aGUgYXJjaGl2ZSBmaWxlLgoKVG8gZml4LCBtYWtlIHJlYWRfYXJjaGl2ZV9maWxlKCkg ZG8gdGhlIGZpbmFsaXplIG9uY2UgaXQgZGV0ZWN0cwpFT0YuICBDaGFuZ2UgaXRzIEFQSSB0byBy ZXR1cm4gYSBib29sZWFuICJ5ZXMgdGhlcmUncyBtb3JlIGRhdGEiCnJhdGhlciB0aGFuIHRoZSBl bnRpcmVseS1taXNsZWFkaW5nIHJhdyBjb3VudCBvZiBieXRlcyByZWFkLgoKQWxzbyBkb2N1bWVu dCB0aGUgY29udHJhY3QgdGhhdCBjdXJfZmlsZSBjYW4gY2hhbmdlIChvciBiZWNvbWUgTlVMTCkK ZHVyaW5nIGEgc2luZ2xlIHJlYWRfYXJjaGl2ZV9maWxlKCkgY2FsbCwgc2luY2UgdGhlIGRlY29t cHJlc3Npb24KcGlwZWxpbmUgbWF5IHByb2R1Y2UgZW5vdWdoIG91dHB1dCB0byB0cmlnZ2VyIG11 bHRpcGxlIGFzdHJlYW1lcgpjYWxsYmFja3MuCgpBdXRob3I6IFRvbSBMYW5lIDx0Z2xAc3NzLnBn aC5wYS51cz4KCkRpc2N1c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vMjE3ODUxNy4xNzc0MDY0 OTQyQHNzcy5wZ2gucGEudXMKLS0tCiBzcmMvYmluL3BnX3dhbGR1bXAvYXJjaGl2ZV93YWxkdW1w LmMgfCA1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCiBzcmMvYmluL3BnX3dhbGR1bXAv cGdfd2FsZHVtcC5oICAgICAgfCAgMSArCiAyIGZpbGVzIGNoYW5nZWQsIDQyIGluc2VydGlvbnMo KyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wZ193YWxkdW1wL2FyY2hp dmVfd2FsZHVtcC5jIGIvc3JjL2Jpbi9wZ193YWxkdW1wL2FyY2hpdmVfd2FsZHVtcC5jCmluZGV4 IGIwNzhjMmQ2OTYwLi5jZDA5MmEwNTdlZiAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wZ193YWxkdW1w L2FyY2hpdmVfd2FsZHVtcC5jCisrKyBiL3NyYy9iaW4vcGdfd2FsZHVtcC9hcmNoaXZlX3dhbGR1 bXAuYwpAQCAtODksNyArODksNyBAQCB0eXBlZGVmIHN0cnVjdCBhc3RyZWFtZXJfd2FsZHVtcAog CiBzdGF0aWMgQXJjaGl2ZWRXQUxGaWxlICpnZXRfYXJjaGl2ZV93YWxfZW50cnkoY29uc3QgY2hh ciAqZm5hbWUsCiAJCQkJCQkJCQkJCSAgWExvZ0R1bXBQcml2YXRlICpwcml2YXRlSW5mbyk7Ci1z dGF0aWMgaW50CXJlYWRfYXJjaGl2ZV9maWxlKFhMb2dEdW1wUHJpdmF0ZSAqcHJpdmF0ZUluZm8s IFNpemUgY291bnQpOworc3RhdGljIGJvb2wgcmVhZF9hcmNoaXZlX2ZpbGUoWExvZ0R1bXBQcml2 YXRlICpwcml2YXRlSW5mbywgU2l6ZSBjb3VudCk7CiBzdGF0aWMgdm9pZCBzZXR1cF90bXB3YWxf ZGlyKGNvbnN0IGNoYXIgKndhbGRpcik7CiBzdGF0aWMgdm9pZCBjbGVhbnVwX3RtcHdhbF9kaXJf YXRleGl0KHZvaWQpOwogCkBAIC0xMzksNiArMTM5LDcgQEAgaW5pdF9hcmNoaXZlX3JlYWRlcihY TG9nRHVtcFByaXZhdGUgKnByaXZhdGVJbmZvLAogCQlwZ19mYXRhbCgiY291bGQgbm90IG9wZW4g ZmlsZSBcIiVzXCIiLCBwcml2YXRlSW5mby0+YXJjaGl2ZV9uYW1lKTsKIAogCXByaXZhdGVJbmZv LT5hcmNoaXZlX2ZkID0gZmQ7CisJcHJpdmF0ZUluZm8tPmFyY2hpdmVfZmRfZW9mID0gZmFsc2U7 CiAKIAlzdHJlYW1lciA9IGFzdHJlYW1lcl93YWxkdW1wX25ldyhwcml2YXRlSW5mbyk7CiAKQEAg LTE3OCw3ICsxNzksNyBAQCBpbml0X2FyY2hpdmVfcmVhZGVyKFhMb2dEdW1wUHJpdmF0ZSAqcHJp dmF0ZUluZm8sCiAJICovCiAJd2hpbGUgKGVudHJ5ID09IE5VTEwgfHwgZW50cnktPmJ1Zi0+bGVu IDwgWExPR19CTENLU1opCiAJewotCQlpZiAocmVhZF9hcmNoaXZlX2ZpbGUocHJpdmF0ZUluZm8s IFhMT0dfQkxDS1NaKSA9PSAwKQorCQlpZiAoIXJlYWRfYXJjaGl2ZV9maWxlKHByaXZhdGVJbmZv LCBYTE9HX0JMQ0tTWikpCiAJCQlwZ19mYXRhbCgiY291bGQgbm90IGZpbmQgV0FMIGluIGFyY2hp dmUgXCIlc1wiIiwKIAkJCQkJIHByaXZhdGVJbmZvLT5hcmNoaXZlX25hbWUpOwogCkBAIC0yMzYs OSArMjM3LDEwIEBAIGZyZWVfYXJjaGl2ZV9yZWFkZXIoWExvZ0R1bXBQcml2YXRlICpwcml2YXRl SW5mbykKIAkvKgogCSAqIE5COiBOb3JtYWxseSwgYXN0cmVhbWVyX2ZpbmFsaXplKCkgaXMgY2Fs bGVkIGJlZm9yZSBhc3RyZWFtZXJfZnJlZSgpIHRvCiAJICogZmx1c2ggYW55IHJlbWFpbmluZyBi dWZmZXJlZCBkYXRhIG9yIHRvIGVuc3VyZSB0aGUgZW5kIG9mIHRoZSB0YXIKLQkgKiBhcmNoaXZl IGlzIHJlYWNoZWQuICBIb3dldmVyLCB3aGVuIGRlY29kaW5nIFdBTCwgb25jZSB3ZSBoaXQgdGhl IGVuZAotCSAqIExTTiwgYW55IHJlbWFpbmluZyBidWZmZXJlZCBkYXRhIG9yIHVucmVhZCBwb3J0 aW9uIG9mIHRoZSBhcmNoaXZlIGNhbgotCSAqIGJlIHNhZmVseSBpZ25vcmVkLgorCSAqIGFyY2hp dmUgaXMgcmVhY2hlZC4gIHJlYWRfYXJjaGl2ZV9maWxlKCkgbWF5IGhhdmUgZG9uZSBzby4gIEhv d2V2ZXIsCisJICogd2hlbiBkZWNvZGluZyBXQUwgd2UgY2FuIHN0b3Agb25jZSB3ZSBoaXQgdGhl IGVuZCBMU04sIHNvIHdlIG1heSBuZXZlcgorCSAqIGhhdmUgcmVhZCBhbGwgb2YgdGhlIGlucHV0 IGZpbGUuICBJbiB0aGF0IGNhc2UgYW55IHJlbWFpbmluZyBidWZmZXJlZAorCSAqIGRhdGEgb3Ig dW5yZWFkIHBvcnRpb24gb2YgdGhlIGFyY2hpdmUgY2FuIGJlIHNhZmVseSBpZ25vcmVkLgogCSAq LwogCWFzdHJlYW1lcl9mcmVlKHByaXZhdGVJbmZvLT5hcmNoaXZlX3N0cmVhbWVyKTsKIApAQCAt Mzg0LDcgKzM4Niw3IEBAIHJlYWRfYXJjaGl2ZV93YWxfcGFnZShYTG9nRHVtcFByaXZhdGUgKnBy aXZhdGVJbmZvLCBYTG9nUmVjUHRyIHRhcmdldFBhZ2VQdHIsCiAJCQkJCQkgZm5hbWUsIHByaXZh dGVJbmZvLT5hcmNoaXZlX25hbWUsCiAJCQkJCQkgKGxvbmcgbG9uZyBpbnQpIChjb3VudCAtIG5i eXRlcyksCiAJCQkJCQkgKGxvbmcgbG9uZyBpbnQpIGNvdW50KTsKLQkJCWlmIChyZWFkX2FyY2hp dmVfZmlsZShwcml2YXRlSW5mbywgUkVBRF9DSFVOS19TSVpFKSA9PSAwKQorCQkJaWYgKCFyZWFk X2FyY2hpdmVfZmlsZShwcml2YXRlSW5mbywgUkVBRF9DSFVOS19TSVpFKSkKIAkJCQlwZ19mYXRh bCgidW5leHBlY3RlZCBlbmQgb2YgYXJjaGl2ZSBcIiVzXCIgd2hpbGUgcmVhZGluZyBcIiVzXCI6 IHJlYWQgJWxsZCBvZiAlbGxkIGJ5dGVzIiwKIAkJCQkJCSBwcml2YXRlSW5mby0+YXJjaGl2ZV9u YW1lLCBmbmFtZSwKIAkJCQkJCSAobG9uZyBsb25nIGludCkgKGNvdW50IC0gbmJ5dGVzKSwKQEAg LTQ5MCw3ICs0OTIsNyBAQCBnZXRfYXJjaGl2ZV93YWxfZW50cnkoY29uc3QgY2hhciAqZm5hbWUs IFhMb2dEdW1wUHJpdmF0ZSAqcHJpdmF0ZUluZm8pCiAJCSAqLwogCQlpZiAoZW50cnkgPT0gTlVM TCB8fCBlbnRyeS0+YnVmLT5sZW4gPT0gMCkKIAkJewotCQkJaWYgKHJlYWRfYXJjaGl2ZV9maWxl KHByaXZhdGVJbmZvLCBSRUFEX0NIVU5LX1NJWkUpID09IDApCisJCQlpZiAoIXJlYWRfYXJjaGl2 ZV9maWxlKHByaXZhdGVJbmZvLCBSRUFEX0NIVU5LX1NJWkUpKQogCQkJCWJyZWFrOwkJCS8qIGFy Y2hpdmUgZmlsZSBlbmRlZCAqLwogCQl9CiAKQEAgLTU0MCw4ICs1NDIsMjIgQEAgZ2V0X2FyY2hp dmVfd2FsX2VudHJ5KGNvbnN0IGNoYXIgKmZuYW1lLCBYTG9nRHVtcFByaXZhdGUgKnByaXZhdGVJ bmZvKQogLyoKICAqIFJlYWRzIGEgY2h1bmsgZnJvbSB0aGUgYXJjaGl2ZSBmaWxlIGFuZCBwYXNz ZXMgaXQgdGhyb3VnaCB0aGUgc3RyZWFtZXIKICAqIHBpcGVsaW5lIGZvciBkZWNvbXByZXNzaW9u IChpZiBuZWVkZWQpIGFuZCB0YXIgbWVtYmVyIGV4dHJhY3Rpb24uCisgKgorICogY291bnQgaXMg dGhlIG1heGltdW0gYW1vdW50IHRvIHRyeSB0byByZWFkIHRoaXMgdGltZS4gIE5vdGUgdGhhdCBp dCdzCisgKiBtZWFzdXJlZCBpbiByYXcgZmlsZSBieXRlcywgYW5kIG1heSBoYXZlIGxpdHRsZSB0 byBkbyB3aXRoIGhvdyBtdWNoCisgKiBjb21lcyBvdXQgb2YgZGVjb21wcmVzc2lvbi9leHRyYWN0 aW9uLgorICoKKyAqIFJldHVybnMgdHJ1ZSBpZiBzdWNjZXNzZnVsLCBmYWxzZSBpZiB0aGVyZSBp cyBubyBtb3JlIGRhdGEuCisgKgorICogQ2FsbGVycyBtdXN0IGJlIGF3YXJlIHRoYXQgYSBzaW5n bGUgY2FsbCBtYXkgdHJpZ2dlciBtdWx0aXBsZSBjYWxsYmFja3MKKyAqIGluIGFzdHJlYW1lcl93 YWxkdW1wX2NvbnRlbnQsIHNvIHByaXZhdGVJbmZvLT5jdXJfZmlsZSBjYW4gY2hhbmdlIHZhbHVl CisgKiAob3IgYmVjb21lIE5VTEwpIGR1cmluZyBhIGNhbGwuICBJbiBwYXJ0aWN1bGFyLCBjdXJf ZmlsZSBpcyBzZXQgdG8gTlVMTAorICogd2hlbiB0aGUgQVNUUkVBTUVSX01FTUJFUl9UUkFJTEVS IGNhbGxiYWNrIGZpcmVzIGF0IHRoZSBlbmQgb2YgYSB0YXIKKyAqIG1lbWJlcjsgaXQgaXMgdGhl biBzZXQgdG8gYSBuZXcgZW50cnkgd2hlbiB0aGUgbmV4dCBXQUwgbWVtYmVyJ3MKKyAqIEFTVFJF QU1FUl9NRU1CRVJfSEVBREVSIGNhbGxiYWNrIGZpcmVzLCB3aGljaCBtYXkgb3IgbWF5IG5vdCBo YXBwZW4KKyAqIHdpdGhpbiB0aGUgc2FtZSBjYWxsLgogICovCi1zdGF0aWMgaW50CitzdGF0aWMg Ym9vbAogcmVhZF9hcmNoaXZlX2ZpbGUoWExvZ0R1bXBQcml2YXRlICpwcml2YXRlSW5mbywgU2l6 ZSBjb3VudCkKIHsKIAlpbnQJCQlyYzsKQEAgLTU0OSw2ICs1NjUsMTEgQEAgcmVhZF9hcmNoaXZl X2ZpbGUoWExvZ0R1bXBQcml2YXRlICpwcml2YXRlSW5mbywgU2l6ZSBjb3VudCkKIAkvKiBUaGUg cmVhZCByZXF1ZXN0IG11c3Qgbm90IGV4Y2VlZCB0aGUgYWxsb2NhdGVkIGJ1ZmZlciBzaXplLiAq LwogCUFzc2VydChwcml2YXRlSW5mby0+YXJjaGl2ZV9yZWFkX2J1Zl9zaXplID49IGNvdW50KTsK IAorCS8qIEZhaWwgaWYgd2UgYWxyZWFkeSByZWFjaGVkIEVPRiBpbiBhIHByaW9yIGNhbGwuICov CisJaWYgKHByaXZhdGVJbmZvLT5hcmNoaXZlX2ZkX2VvZikKKwkJcmV0dXJuIGZhbHNlOworCisJ LyogVHJ5IHRvIHJlYWQgc29tZSBtb3JlIGRhdGEuICovCiAJcmMgPSByZWFkKHByaXZhdGVJbmZv LT5hcmNoaXZlX2ZkLCBwcml2YXRlSW5mby0+YXJjaGl2ZV9yZWFkX2J1ZiwgY291bnQpOwogCWlm IChyYyA8IDApCiAJCXBnX2ZhdGFsKCJjb3VsZCBub3QgcmVhZCBmaWxlIFwiJXNcIjogJW0iLApA QCAtNTYyLDggKzU4MywxOSBAQCByZWFkX2FyY2hpdmVfZmlsZShYTG9nRHVtcFByaXZhdGUgKnBy aXZhdGVJbmZvLCBTaXplIGNvdW50KQogCQlhc3RyZWFtZXJfY29udGVudChwcml2YXRlSW5mby0+ YXJjaGl2ZV9zdHJlYW1lciwgTlVMTCwKIAkJCQkJCSAgcHJpdmF0ZUluZm8tPmFyY2hpdmVfcmVh ZF9idWYsIHJjLAogCQkJCQkJICBBU1RSRUFNRVJfVU5LTk9XTik7CisJZWxzZQorCXsKKwkJLyoK KwkJICogV2UgcmVhY2hlZCBFT0YsIGJ1dCB0aGVyZSBpcyBwcm9iYWJseSBzdGlsbCBkYXRhIHF1 ZXVlZCBpbiB0aGUKKwkJICogYXN0cmVhbWVyIHBpcGVsaW5lJ3MgYnVmZmVycy4gIEZsdXNoIGl0 IG91dCB0byBlbnN1cmUgdGhhdCB3ZQorCQkgKiBwcm9jZXNzIGV2ZXJ5dGhpbmcuCisJCSAqLwor CQlhc3RyZWFtZXJfZmluYWxpemUocHJpdmF0ZUluZm8tPmFyY2hpdmVfc3RyZWFtZXIpOworCQkv KiBTZXQgZmxhZyB0byBlbnN1cmUgd2UgZG9uJ3QgZmluYWxpemUgbW9yZSB0aGFuIG9uY2UuICov CisJCXByaXZhdGVJbmZvLT5hcmNoaXZlX2ZkX2VvZiA9IHRydWU7CisJfQogCi0JcmV0dXJuIHJj OworCXJldHVybiB0cnVlOwogfQogCiAvKgpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wZ193YWxkdW1w L3BnX3dhbGR1bXAuaCBiL3NyYy9iaW4vcGdfd2FsZHVtcC9wZ193YWxkdW1wLmgKaW5kZXggMzY4 OTM2MjRmNTMuLmNkZTdjNmNhM2YyIDEwMDY0NAotLS0gYS9zcmMvYmluL3BnX3dhbGR1bXAvcGdf d2FsZHVtcC5oCisrKyBiL3NyYy9iaW4vcGdfd2FsZHVtcC9wZ193YWxkdW1wLmgKQEAgLTM1LDYg KzM1LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgWExvZ0R1bXBQcml2YXRlCiAJY2hhcgkgICAqYXJjaGl2 ZV9kaXI7CiAJY2hhcgkgICAqYXJjaGl2ZV9uYW1lOwkvKiBUYXIgYXJjaGl2ZSBmaWxlbmFtZSAq LwogCWludAkJCWFyY2hpdmVfZmQ7CQkvKiBGaWxlIGRlc2NyaXB0b3IgZm9yIHRoZSBvcGVuIHRh ciBmaWxlICovCisJYm9vbAkJYXJjaGl2ZV9mZF9lb2Y7IC8qIEhhdmUgd2UgcmVhY2hlZCBFT0Yg b24gYXJjaGl2ZV9mZD8gKi8KIAogCWFzdHJlYW1lciAgKmFyY2hpdmVfc3RyZWFtZXI7CiAJY2hh cgkgICAqYXJjaGl2ZV9yZWFkX2J1ZjsJLyogUmV1c2FibGUgcmVhZCBidWZmZXIgZm9yIGFyY2hp dmUgSS9PICovCi0tIAoyLjQzLjAKCg== --000000000000c9dc0d064d9b2b37 Content-Type: text/x-patch; charset="US-ASCII"; name="v5-0005-Remove-nonfunctional-tar-file-trailer-size-check.patch" Content-Disposition: attachment; filename="v5-0005-Remove-nonfunctional-tar-file-trailer-size-check.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mn1o4fsg0 RnJvbSBjYWIzZTExNmMxMDY0YWZjYzE2ZTYzODU1NWM3NGY3ZjQ2MGJlNTViIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgRHVuc3RhbiA8YW5kcmV3QGR1bnNsYW5lLm5ldD4K RGF0ZTogU3VuLCAyMiBNYXIgMjAyNiAwNjo1Mzo1OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggdjUg NS81XSBSZW1vdmUgbm9uZnVuY3Rpb25hbCB0YXIgZmlsZSB0cmFpbGVyIHNpemUgY2hlY2suCgpU aGUgQVNUUkVBTUVSX0FSQ0hJVkVfVFJBSUxFUiBjYXNlIGluIGFzdHJlYW1lcl90YXJfcGFyc2Vy X2NvbnRlbnQoKQppbnRlbmRlZCB0byByZWplY3QgdGFyIGZpbGVzIHdob3NlIHRyYWlsZXIgZXhj ZWVkZWQgMiBibG9ja3MuICBIb3dldmVyLAp0aGUgY2hlY2sgY29tcGFyZWQgJ2xlbicgYWZ0ZXIg YXN0cmVhbWVyX2J1ZmZlcl9ieXRlcygpIGhhZCBhbHJlYWR5CmNvbnN1bWVkIGFsbCB0aGUgZGF0 YSBhbmQgc2V0IGxlbiB0byAwLCBzbyB0aGUgcGdfZmF0YWwoKSBjb3VsZCBuZXZlcgpmaXJlLgoK TW9yZW92ZXIsIHBlciB0aGUgUE9TSVggc3BlY2lmaWNhdGlvbiBmb3IgdGhlIHVzdGFyIGZvcm1h dCwgdGhlIGxhc3QKcGh5c2ljYWwgYmxvY2sgb2YgYSB0YXIgYXJjaGl2ZSBpcyBhbHdheXMgZnVs bC1zaXplZCwgYW5kICJsb2dpY2FsCnJlY29yZHMgYWZ0ZXIgdGhlIHR3byB6ZXJvIGxvZ2ljYWwg cmVjb3JkcyBtYXkgY29udGFpbiB1bmRlZmluZWQgZGF0YS4iCkdOVSB0YXIsIGZvciBleGFtcGxl LCB6ZXJvLXBhZHMgaXRzIG91dHB1dCB0byBhIDEwa0IgYm91bmRhcnkgYnkKZGVmYXVsdC4gIFNv IHJlamVjdGluZyBleHRyYSBkYXRhIGFmdGVyIHRoZSB0d28gemVybyBibG9ja3Mgd291bGQgYmUK d3JvbmcgZXZlbiBpZiB0aGUgY2hlY2sgd29ya2VkLgoKUmVtb3ZlIHRoZSBkZWFkIGNoZWNrIGFu ZCB1cGRhdGUgdGhlIGNvbW1lbnQgdG8gZXhwbGFpbiB3aHkgdHJhaWxpbmcKZGF0YSBpcyBleHBl Y3RlZCBhbmQgaGFybWxlc3MuCgpQZXIgcmVwb3J0IGZyb20gVG9tIExhbmUuCgpEaXNjdXNzaW9u OiBodHRwczovL3Bvc3Rnci5lcy9tLzIxNzg1MTcuMTc3NDA2NDk0MkBzc3MucGdoLnBhLnVzCi0t LQogc3JjL2ZlX3V0aWxzL2FzdHJlYW1lcl90YXIuYyB8IDEyICsrKysrKysrLS0tLQogMSBmaWxl IGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmMvZmVfdXRpbHMvYXN0cmVhbWVyX3Rhci5jIGIvc3JjL2ZlX3V0aWxzL2FzdHJlYW1lcl90YXIu YwppbmRleCA0YjE4N2YwYThjNC4uZjhiZTVlNGZmOGEgMTAwNjQ0Ci0tLSBhL3NyYy9mZV91dGls cy9hc3RyZWFtZXJfdGFyLmMKKysrIGIvc3JjL2ZlX3V0aWxzL2FzdHJlYW1lcl90YXIuYwpAQCAt MjM2LDEyICsyMzYsMTYgQEAgYXN0cmVhbWVyX3Rhcl9wYXJzZXJfY29udGVudChhc3RyZWFtZXIg KnN0cmVhbWVyLCBhc3RyZWFtZXJfbWVtYmVyICptZW1iZXIsCiAKIAkJCQkvKgogCQkJCSAqIFdl J3ZlIHNlZW4gYW4gZW5kLW9mLWFyY2hpdmUgaW5kaWNhdG9yLCBzbyBhbnl0aGluZyBtb3JlIGlz Ci0JCQkJICogYnVmZmVyZWQgYW5kIHNlbnQgYXMgcGFydCBvZiB0aGUgYXJjaGl2ZSB0cmFpbGVy LiBCdXQgd2UKLQkJCQkgKiBkb24ndCBleHBlY3QgbW9yZSB0aGFuIDIgYmxvY2tzLgorCQkJCSAq IGJ1ZmZlcmVkIGFuZCBzZW50IGFzIHBhcnQgb2YgdGhlIGFyY2hpdmUgdHJhaWxlci4KKwkJCQkg KgorCQkJCSAqIFBlciBQT1NJWCwgdGhlIGxhc3QgcGh5c2ljYWwgYmxvY2sgb2YgYSB0YXIgYXJj aGl2ZSBpcworCQkJCSAqIGFsd2F5cyBmdWxsLXNpemVkLCBzbyB0aGVyZSBtYXkgYmUgdW5kZWZp bmVkIGRhdGEgYWZ0ZXIgdGhlCisJCQkJICogdHdvIHplcm8gYmxvY2tzIHRoYXQgbWFyayBlbmQt b2YtYXJjaGl2ZS4gIEdOVSB0YXIsIGZvcgorCQkJCSAqIGV4YW1wbGUsIHplcm8tcGFkcyB0byBh IDEwa0IgYm91bmRhcnkgYnkgZGVmYXVsdC4gIFdlIGp1c3QKKwkJCQkgKiBidWZmZXIgd2hhdGV2 ZXIgd2UgcmVjZWl2ZSBhbmQgcGFzcyBpdCBhbG9uZyBhdCBmaW5hbGl6ZQorCQkJCSAqIHRpbWUu CiAJCQkJICovCiAJCQkJYXN0cmVhbWVyX2J1ZmZlcl9ieXRlcyhzdHJlYW1lciwgJmRhdGEsICZs ZW4sIGxlbik7Ci0JCQkJaWYgKGxlbiA+IDIgKiBUQVJfQkxPQ0tfU0laRSkKLQkJCQkJcGdfZmF0 YWwoInRhciBmaWxlIHRyYWlsZXIgZXhjZWVkcyAyIGJsb2NrcyIpOwogCQkJCXJldHVybjsKIAog CQkJZGVmYXVsdDoKLS0gCjIuNDMuMAoK --000000000000c9dc0d064d9b2b37--