From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 114856 invoked by alias); 30 Jun 2019 23:36:51 -0000 Mailing-List: contact bzip2-devel-help@sourceware.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Subscribe: List-Id: Sender: bzip2-devel-owner@sourceware.org Received: (qmail 114847 invoked by uid 89); 30 Jun 2019 23:36:51 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.100.3 on sourceware.org X-Virus-Found: No X-Spam-SWARE-Status: No, score=-18.8 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,SPF_PASS autolearn=ham version=3.3.1 spammy=Having, implementations, mtf, tolerate X-Spam-Status: No, score=-18.8 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,SPF_PASS autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on sourceware.org X-Spam-Level: X-HELO: gnu.wildebeest.org Message-ID: <308d9e82220760205ee673bf0505ee1815d48596.camel@klomp.org> Subject: Alternative nSelectors patch (Was: bzip2 1.0.7 released) From: Mark Wielaard To: jseward@acm.org, Federico Mena Quintero , bzip2-devel@sourceware.org Date: Tue, 01 Jan 2019 00:00:00 -0000 In-Reply-To: <9998ca428c4c7f895a543aa91941e58efb0d5291.camel@klomp.org> References: <20190627205837.GD9273@wildebeest.org> <0a2331bc6d0c8500c2c45df1e3ebe01b49ad5831.camel@klomp.org> <8c4d5cf2479253406dacdee122692cc77771afb9.camel@gnome.org> <9998ca428c4c7f895a543aa91941e58efb0d5291.camel@klomp.org> Content-Type: multipart/mixed; boundary="=-oQZFtY0ITTlszYlKwGQG" X-Mailer: Evolution 3.28.5 (3.28.5-2.el7) Mime-Version: 1.0 X-Spam-Flag: NO X-SW-Source: 2019-q2/txt/msg00035.txt.bz2 --=-oQZFtY0ITTlszYlKwGQG Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Content-length: 1006 Hi, On Fri, 2019-06-28 at 13:10 +0200, Mark Wielaard wrote: > > It seems to me to be important to now split BZ_MAX_SELECTORS into these= two > > parts so as to make it clear to everybody that we're accepting (decompr= essing) > > a slightly larger set of inputs than we create (a la that old saying ab= out > > network protocol implementations), so as to tolerate other compressors. >=20 > That seems good. The attached patch does this and makes it possible to > decode the problematic bz2 file. Sorry, it is a bit too late here to properly document this patch and explain why I think it is a better one than the "split-max-selectors" fix. But hopefully the new testsuite example and the comment in the patch make clear what my thinking is. This resolved both the issue with the large file reported as with the new test suite file (lbzip2/32767.bz2). The whole testsuite passes now, even under valgrind and with gcc -fsanitize=3Dundefined. Comments on the patch idea more than welcome. Thanks, Mark --=-oQZFtY0ITTlszYlKwGQG Content-Disposition: inline; filename="limit-nSelectors-processing.patch" Content-Type: text/x-patch; name="limit-nSelectors-processing.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 Content-length: 2066 ZGlmZiAtLWdpdCBhL2NvbXByZXNzLmMgYi9jb21wcmVzcy5jCmluZGV4IDIz NzYyMGQuLjc2YWRlZTYgMTAwNjQ0Ci0tLSBhL2NvbXByZXNzLmMKKysrIGIv Y29tcHJlc3MuYwpAQCAtNDU0LDcgKzQ1NCw3IEBAIHZvaWQgc2VuZE1URlZh bHVlcyAoIEVTdGF0ZSogcyApCiAKICAgIEFzc2VydEgoIG5Hcm91cHMgPCA4 LCAzMDAyICk7CiAgICBBc3NlcnRIKCBuU2VsZWN0b3JzIDwgMzI3NjggJiYK LSAgICAgICAgICAgIG5TZWxlY3RvcnMgPD0gKDIgKyAoOTAwMDAwIC8gQlpf R19TSVpFKSksCisgICAgICAgICAgICBuU2VsZWN0b3JzIDw9IEJaX01BWF9T RUxFQ1RPUlMsCiAgICAgICAgICAgICAzMDAzICk7CiAKIApkaWZmIC0tZ2l0 IGEvZGVjb21wcmVzcy5jIGIvZGVjb21wcmVzcy5jCmluZGV4IDIwY2U0OTMu LjMzMDM0OTkgMTAwNjQ0Ci0tLSBhL2RlY29tcHJlc3MuYworKysgYi9kZWNv bXByZXNzLmMKQEAgLTI4Nyw3ICsyODcsNyBAQCBJbnQzMiBCWjJfZGVjb21w cmVzcyAoIERTdGF0ZSogcyApCiAgICAgICBHRVRfQklUUyhCWl9YX1NFTEVD VE9SXzEsIG5Hcm91cHMsIDMpOwogICAgICAgaWYgKG5Hcm91cHMgPCAyIHx8 IG5Hcm91cHMgPiBCWl9OX0dST1VQUykgUkVUVVJOKEJaX0RBVEFfRVJST1Ip OwogICAgICAgR0VUX0JJVFMoQlpfWF9TRUxFQ1RPUl8yLCBuU2VsZWN0b3Jz LCAxNSk7Ci0gICAgICBpZiAoblNlbGVjdG9ycyA8IDEgfHwgblNlbGVjdG9y cyA+IEJaX01BWF9TRUxFQ1RPUlMpIFJFVFVSTihCWl9EQVRBX0VSUk9SKTsK KyAgICAgIGlmIChuU2VsZWN0b3JzIDwgMSkgUkVUVVJOKEJaX0RBVEFfRVJS T1IpOwogICAgICAgZm9yIChpID0gMDsgaSA8IG5TZWxlY3RvcnM7IGkrKykg ewogICAgICAgICAgaiA9IDA7CiAgICAgICAgICB3aGlsZSAoVHJ1ZSkgewpA QCAtMjk2LDggKzI5NiwxNCBAQCBJbnQzMiBCWjJfZGVjb21wcmVzcyAoIERT dGF0ZSogcyApCiAgICAgICAgICAgICBqKys7CiAgICAgICAgICAgICBpZiAo aiA+PSBuR3JvdXBzKSBSRVRVUk4oQlpfREFUQV9FUlJPUik7CiAgICAgICAg ICB9Ci0gICAgICAgICBzLT5zZWxlY3Rvck10ZltpXSA9IGo7CisgICAgICAg ICAvKiBIYXZpbmcgbW9yZSB0aGFuIEJaX01BWF9TRUxFQ1RPUlMgZG9lc24n dCBtYWtlIG11Y2ggc2Vuc2UKKyAgICAgICAgICAgIHNpbmNlIHRoZXkgd2ls bCBuZXZlciBiZSB1c2VkLCBidXQgc29tZSBpbXBsZW1lbnRhdGlvbnMgbWln aHQKKyAgICAgICAgICAgICJyb3VuZCB1cCIgdGhlIG51bWJlciBvZiBzZWxl Y3RvcnMsIHNvIGp1c3QgaWdub3JlIHRob3NlLiAqLworICAgICAgICAgaWYg KGkgPCBCWl9NQVhfU0VMRUNUT1JTKQorICAgICAgICAgICBzLT5zZWxlY3Rv ck10ZltpXSA9IGo7CiAgICAgICB9CisgICAgICBpZiAoblNlbGVjdG9ycyA+ IEJaX01BWF9TRUxFQ1RPUlMpCisgICAgICAgIG5TZWxlY3RvcnMgPSBCWl9N QVhfU0VMRUNUT1JTOwogCiAgICAgICAvKi0tLSBVbmRvIHRoZSBNVEYgdmFs dWVzIGZvciB0aGUgc2VsZWN0b3JzLiAtLS0qLwogICAgICAgewo= --=-oQZFtY0ITTlszYlKwGQG--