[openssl-dev] [openssl.org #4485] big number tests and Math::BigInt changes
Richard Levitte via RT
rt at openssl.org
Fri Mar 25 23:05:35 UTC 2016
I've attached a tentative patch for test/recipes/bc.pl. Would you be willing to
try it out?
Vid Fre, 25 Mar 2016 kl. 21.29.50, skrev levitte:
> Vid Fre, 25 Mar 2016 kl. 20.51.10, skrev craigberry at mac.com:
> > I reported this to the Math::BigInt maintainer, who explains that the
> > change fixes a bug in which, "The code did truncated division whereas
> > the documentation said that floored division was used" and he changed
> > the code to match the documentation. See:
> BN_div does truncated division, which is expressed in other terms in
> the comment in crypto/bn/bn_div.c:
> /*- * BN_div computes dv := num / divisor, rounding towards * zero,
> and sets up
> rm such that dv*divisor + rm = num holds. * Thus: * dv->neg == num-
> >neg ^
> divisor->neg (unless the result is zero) * rm->neg == num->neg (unless
> remainder is zero) * If 'dv' or 'rm' is NULL, the respective value is
> returned. */
> keywords being "rounding towards zero".
> > Or is truncated division intentional and we now have a problem using
> > Math::BigInt as a reference since that’s not what it does anymore?
> I wouldn't dare change BN_div's behaviour in this regard. It might not
> as mathematically correct, but there's too much else possibly relying
> the current behaviour.
> However, if you have a look at test/recipes/bc.pl, you'll see that
> a "fix" of modulo because there's already a difference between what
> OpenSSL's modulo does and what Math::BigInt's modulo does. I don't
> think it would be too hard to do something similar for division.
> > but I have also reproduced the test failures on OS X by just doing:
> > $ sudo cpan -i Math::BigInt
> Richard Levitte
> levitte at openssl.org
levitte at openssl.org
Ticket here: http://rt.openssl.org/Ticket/Display.html?id=4485
Please log in as guest with password guest if prompted
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 872 bytes
Desc: not available
More information about the openssl-dev