Nothing with a real impact, just to silence sanitizers. From OSS-Fuzz:
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /src/libfuzzer/FuzzerSHA1.cpp:132:14 in sec-tabselect.c:58:24: runtime error: negation of 1 cannot be represented in type 'mp_limb_t' (aka 'unsigned long') Patch attached. With Best Regards, Tim
From f258d9cf51bca9a0c00caa478193e9ee4f7ebc5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20R=C3=BChsen?= <tim.rueh...@gmx.de> Date: Fri, 3 Nov 2017 17:04:43 +0100 Subject: [PATCH] sec-tabselect: Fix undefined behavior MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This fixes a UBSAN warning (fuzzing GnuTLS on OSS-Fuzz): negation of 1 cannot be represented in type 'mp_limb_t' (aka 'unsigned long') Signed-off-by: Tim Rühsen <tim.rueh...@gmx.de> --- sec-tabselect.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sec-tabselect.c b/sec-tabselect.c index e6bf2282..942c4247 100644 --- a/sec-tabselect.c +++ b/sec-tabselect.c @@ -55,7 +55,7 @@ sec_tabselect (mp_limb_t *rp, mp_size_t rn, mpn_zero (rp, rn); for (p = table; p < end; p += rn, k--) { - mp_limb_t mask = - (mp_limb_t) (k == 0); + mp_limb_t mask = (mp_limb_t) -(k == 0); for (i = 0; i < rn; i++) rp[i] += mask & p[i]; } -- 2.15.0.rc2
signature.asc
Description: OpenPGP digital signature
_______________________________________________ nettle-bugs mailing list nettle-bugs@lists.lysator.liu.se http://lists.lysator.liu.se/mailman/listinfo/nettle-bugs