From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 27 16:06:40 2014 Received: (at submit) by debbugs.gnu.org; 27 Oct 2014 20:06:40 +0000 Received: from localhost ([127.0.0.1]:36977 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XiqYp-0003jA-4J for submit@debbugs.gnu.org; Mon, 27 Oct 2014 16:06:39 -0400 Received: from eggs.gnu.org ([208.118.235.92]:34222) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XiqYn-0003iw-8h for submit@debbugs.gnu.org; Mon, 27 Oct 2014 16:06:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XiqYY-0006tD-71 for submit@debbugs.gnu.org; Mon, 27 Oct 2014 16:06:31 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:59912) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XiqYY-0006t7-3M for submit@debbugs.gnu.org; Mon, 27 Oct 2014 16:06:22 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35890) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XiqYQ-0003AZ-Fg for bug-diffutils@gnu.org; Mon, 27 Oct 2014 16:06:21 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XiqYI-0006qu-Vg for bug-diffutils@gnu.org; Mon, 27 Oct 2014 16:06:14 -0400 Received: from mout.kundenserver.de ([212.227.126.130]:49275) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XiqYI-0006qo-MO for bug-diffutils@gnu.org; Mon, 27 Oct 2014 16:06:06 -0400 Received: from fungi.pizza.local (p4FE30B90.dip0.t-ipconnect.de [79.227.11.144]) by mrelayeu.kundenserver.de (node=mreue007) with ESMTP (Nemesis) id 0MBeAU-1XpxYB0sx4-00AXjD; Mon, 27 Oct 2014 21:06:05 +0100 Received: from fungi.pizza.local (localhost [127.0.0.1]) by fungi.pizza.local (8.14.8/8.14.8) with ESMTP id s9RK62r7007109 for ; Mon, 27 Oct 2014 21:06:02 +0100 (CET) Received: (from tobias@localhost) by fungi.pizza.local (8.14.8/8.14.8/Submit) id s9RK61AL020000 for bug-diffutils@gnu.org; Mon, 27 Oct 2014 21:06:01 +0100 (CET) Date: Mon, 27 Oct 2014 21:06:01 +0100 From: Tobias Stoeckmann To: bug-diffutils@gnu.org Subject: floating point exception on invalid argument Message-ID: <20141027200601.GA26496@fungi.pizza.local> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.22 (2013-10-16) X-Provags-ID: V02:K0:mtiLVRpgiOzIKgCtP8h+B6i7HmyEBMzyU19tve3oN2q lFHht46VsD4kkAUPd729IzO+ilodYuxEoRiJ2jXtmsnlSF1r47 cTFOtTb6Xcw5VwymM9PqO2x78Xy9zlv0OdnOdLLv5jduaqahBW WJ9nvS4Sd1YUHvjgqXd5vNEqeGwBFcgnvvCIdWgshUnT8EjiDQ qfxKWMreO/TDqz44URazxBEJxVTAvdv3M/jUQDT8eXqvCLZBj0 zTPUt993iKH8C217QknWBiuJqizUoZZBQQAgtXqm6IYDS4T6ce OyrB3YZeUpSFBhcpPxdgByQ8IVgtzfPrIO4ApjloHzx8xuMWKJ qH2oul7QCKdvaKuUso2GfZ/G6LGMMzYglP1pcPxTByPv3RbOrr Tvhxr3qEYriHw== X-UI-Out-Filterresults: notjunk:1; X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) Hi, on 64 bit systems, an invalid tabsize argument can trigger a floating point exception: $ diff --tabsize=9223372036854775808 . . Floating point exception Offending line is this one: intmax_t off = (w + t + GUTTER_WIDTH_MINIMUM) / (2 * t) * t; The tabsize I supplied is 2^63, multiplying by 2 will be 2^64 which is too large, so the divisor overflows to 0. This is a purely cosmetical fix, I don't see the need to adjust anything except avoiding this special value. I doubt that anyone ever needed these large numbers. Tobias --- diffutils-3.3/src/diff.c~ 2014-10-27 20:54:30.968656876 +0100 +++ diffutils-3.3/src/diff.c 2014-10-27 20:54:41.360708407 +0100 @@ -594,7 +594,7 @@ case TABSIZE_OPTION: numval = strtoumax (optarg, &numend, 10); - if (! (0 < numval && numval <= SIZE_MAX) || *numend) + if (! (0 < numval && numval <= SIZE_MAX / 2) || *numend) try_help ("invalid tabsize '%s'", optarg); if (tabsize != numval) { From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 28 01:25:03 2014 Received: (at 18857-done) by debbugs.gnu.org; 28 Oct 2014 05:25:03 +0000 Received: from localhost ([127.0.0.1]:37117 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XizHC-00012Y-Bh for submit@debbugs.gnu.org; Tue, 28 Oct 2014 01:25:02 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:60312) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XizH8-000120-Os for 18857-done@debbugs.gnu.org; Tue, 28 Oct 2014 01:25:00 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id EF167A60028; Mon, 27 Oct 2014 22:24:52 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id w5NRy8BljpFo; Mon, 27 Oct 2014 22:24:48 -0700 (PDT) Received: from [192.168.1.9] (pool-71-177-17-123.lsanca.dsl-w.verizon.net [71.177.17.123]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id C8A03A6001E; Mon, 27 Oct 2014 22:24:48 -0700 (PDT) Message-ID: <544F28A0.6060400@cs.ucla.edu> Date: Mon, 27 Oct 2014 22:24:48 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 MIME-Version: 1.0 To: Tobias Stoeckmann , 18857-done@debbugs.gnu.org Subject: Re: [bug-diffutils] bug#18857: floating point exception on invalid argument References: <20141027200601.GA26496@fungi.pizza.local> In-Reply-To: <20141027200601.GA26496@fungi.pizza.local> Content-Type: multipart/mixed; boundary="------------000606030904040308050001" X-Spam-Score: -2.9 (--) X-Debbugs-Envelope-To: 18857-done X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.9 (--) This is a multi-part message in MIME format. --------------000606030904040308050001 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Tobias Stoeckmann wrote: > I don't see the need to adjust anything > except avoiding this special value. I doubt that anyone ever needed > these large numbers. Yes, it's hard to imagine anyone needing a tabsize that large. Still, the GNU policy is to avoid unnecessary limits, so it's better to make the limit as large as easily possible, which here would be SIZE_MAX - GUTTER_WIDTH_MINIMUM. Also, I see there are other ways the nearby code can overflow. Plus, we should put in a test case for this bug. So I installed the attached patch, which should address these issues. Thanks for reporting the problem. --------------000606030904040308050001 Content-Type: text/plain; charset=UTF-8; name="0001-diff-fix-integer-overflow-problem-with-tabsize.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-diff-fix-integer-overflow-problem-with-tabsize.patch" RnJvbSA5NTJhNzA0ZDZiODFmNTI4M2VjMmNlZGU0Yjk5OTVmMDQ0OTRlMWFkIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBNb24sIDI3IE9jdCAyMDE0IDE5OjUzOjA4IC0wNzAwClN1YmplY3Q6IFtQQVRD SF0gZGlmZjogZml4IGludGVnZXIgb3ZlcmZsb3cgcHJvYmxlbSB3aXRoIC0tdGFic2l6ZQoK UmVwb3J0ZWQgYnkgVG9iaWFzIFN0b2Vja21hbm4gaW46IGh0dHA6Ly9idWdzLmdudS5vcmcv MTg4NTcKKiBzcmMvZGlmZi5jIChtYWluKTogRG9uJ3Qgb3ZlcmZsb3cgaWYgSU5UTUFYX01B WCAvIDIgPCB0YWJzaXplLgoqIHRlc3RzL2JpZ251bTogTmV3IGZpbGUsIHRvIHRlc3QgZm9y IHRoaXMgYnVnLgoqIHRlc3RzL01ha2VmaWxlLmFtIChURVNUUyk6IEFkZCBpdC4KLS0tCiBz cmMvZGlmZi5jICAgICAgICB8IDE1ICsrKysrKysrKystLS0tLQogdGVzdHMvTWFrZWZpbGUu YW0gfCAgMSArCiB0ZXN0cy9iaWdudW0gICAgICB8IDE0ICsrKysrKysrKysrKysrCiAzIGZp bGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCiBjcmVhdGUg bW9kZSAxMDA3NTUgdGVzdHMvYmlnbnVtCgpkaWZmIC0tZ2l0IGEvc3JjL2RpZmYuYyBiL3Ny Yy9kaWZmLmMKaW5kZXggMzk3ODE1ZS4uMDNmOGU0ZiAxMDA2NDQKLS0tIGEvc3JjL2RpZmYu YworKysgYi9zcmMvZGlmZi5jCkBAIC01OTUsNyArNTk1LDggQEAgbWFpbiAoaW50IGFyZ2Ms IGNoYXIgKiphcmd2KQogCiAJY2FzZSBUQUJTSVpFX09QVElPTjoKIAkgIG51bXZhbCA9IHN0 cnRvdW1heCAob3B0YXJnLCAmbnVtZW5kLCAxMCk7Ci0JICBpZiAoISAoMCA8IG51bXZhbCAm JiBudW12YWwgPD0gU0laRV9NQVgpIHx8ICpudW1lbmQpCisJICBpZiAoISAoMCA8IG51bXZh bCAmJiBudW12YWwgPD0gU0laRV9NQVggLSBHVVRURVJfV0lEVEhfTUlOSU1VTSkKKwkgICAg ICB8fCAqbnVtZW5kKQogCSAgICB0cnlfaGVscCAoImludmFsaWQgdGFic2l6ZSAnJXMnIiwg b3B0YXJnKTsKIAkgIGlmICh0YWJzaXplICE9IG51bXZhbCkKIAkgICAgewpAQCAtNjgyLDEw ICs2ODMsMTQgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQogCQlhIGhhbGYgbGlu ZSBwbHVzIGEgZ3V0dGVyIGlzIGFuIGludGVncmFsIG51bWJlciBvZiB0YWJzLAogCQlzbyB0 aGF0IHRhYnMgaW4gdGhlIHJpZ2h0IGNvbHVtbiBsaW5lIHVwLiAgKi8KIAotICAgIGludG1h eF90IHQgPSBleHBhbmRfdGFicyA/IDEgOiB0YWJzaXplOwotICAgIGludG1heF90IHcgPSB3 aWR0aDsKLSAgICBpbnRtYXhfdCBvZmYgPSAodyArIHQgKyBHVVRURVJfV0lEVEhfTUlOSU1V TSkgLyAoMiAqIHQpICAqICB0OwotICAgIHNkaWZmX2hhbGZfd2lkdGggPSBNQVggKDAsIE1J TiAob2ZmIC0gR1VUVEVSX1dJRFRIX01JTklNVU0sIHcgLSBvZmYpKSwKKyAgICBzaXplX3Qg dCA9IGV4cGFuZF90YWJzID8gMSA6IHRhYnNpemU7CisgICAgc2l6ZV90IHcgPSB3aWR0aDsK KyAgICBzaXplX3QgdF9wbHVzX2cgPSB0ICsgR1VUVEVSX1dJRFRIX01JTklNVU07CisgICAg c2l6ZV90IHVuYWxpZ25lZF9vZmYgPSAodyA+PiAxKSArICh0X3BsdXNfZyA+PiAxKSArICh3 ICYgdF9wbHVzX2cgJiAxKTsKKyAgICBzaXplX3Qgb2ZmID0gdW5hbGlnbmVkX29mZiAtIHVu YWxpZ25lZF9vZmYgJSB0OworICAgIHNkaWZmX2hhbGZfd2lkdGggPSAob2ZmIDw9IEdVVFRF Ul9XSURUSF9NSU5JTVVNIHx8IHcgPD0gb2ZmCisJCQk/IDAKKwkJCTogTUlOIChvZmYgLSBH VVRURVJfV0lEVEhfTUlOSU1VTSwgdyAtIG9mZikpOwogICAgIHNkaWZmX2NvbHVtbjJfb2Zm c2V0ID0gc2RpZmZfaGFsZl93aWR0aCA/IG9mZiA6IHc7CiAgIH0KIApkaWZmIC0tZ2l0IGEv dGVzdHMvTWFrZWZpbGUuYW0gYi90ZXN0cy9NYWtlZmlsZS5hbQppbmRleCAwMDVkOWYwLi40 MzhmYmRmIDEwMDY0NAotLS0gYS90ZXN0cy9NYWtlZmlsZS5hbQorKysgYi90ZXN0cy9NYWtl ZmlsZS5hbQpAQCAtMiw2ICsyLDcgQEAKIAogVEVTVFMgPSBcCiAgIGJhc2ljIFwKKyAgYmln bnVtIFwKICAgYmluYXJ5IFwKICAgY29sbGlkaW5nLWZpbGUtbmFtZXMgXAogICBleGNlc3Mt c2xhc2ggXApkaWZmIC0tZ2l0IGEvdGVzdHMvYmlnbnVtIGIvdGVzdHMvYmlnbnVtCm5ldyBm aWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmEwYzk1ZjYKLS0tIC9kZXYvbnVsbAor KysgYi90ZXN0cy9iaWdudW0KQEAgLTAsMCArMSwxNCBAQAorIyEvYmluL3NoCisjIGJpZyBu dW1iZXJzCisKKy4gIiR7c3JjZGlyPS59L2luaXQuc2giOyBwYXRoX3ByZXBlbmRfIC4uL3Ny YworCitmYWlsPTAKKworZm9yIHRhYnNpemUgaW4gMjE0NzQ4MzY0OCA5MjIzMzcyMDM2ODU0 Nzc1ODA4OyBkbworICBkaWZmIC0tdGFic2l6ZT0kdGFic2l6ZSAvZGV2L251bGwgL2Rldi9u dWxsCisgIHN0YXR1cz0kPworICB0ZXN0ICRzdGF0dXMgLWVxIDAgfHwgdGVzdCAkc3RhdHVz IC1lcSAyIHx8IGZhaWw9MQorZG9uZQorCitFeGl0ICRmYWlsCi0tIAoxLjkuMwoK --------------000606030904040308050001-- From unknown Fri Sep 05 20:55:39 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 25 Nov 2014 12:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator