crypto/bn/bntest.c:981: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned64 by call to `BN_mod_exp_mont_consttime`.
Showing all 13 steps of the trace


crypto/bn/bntest.c:979:3: Call
977.   		{
978.   		BN_bntest_rand(a,20+i*5,0,0); /**/
979.   		BN_bntest_rand(b,2+i,0,0); /**/
         ^
980.   
981.   		if (!BN_mod_exp_mont_consttime(d,a,b,c,ctx,NULL))

crypto/bn/bn_rand.c:224:9: Call
  222.   int     BN_bntest_rand(BIGNUM *rnd, size_t bits, int top, int bottom)
  223.   	{
  224.   	return bnrand(2, rnd, bits, top, bottom);
                 ^
  225.   	}
  226.   #endif

crypto/bn/bn_rand.c:118:1: Parameter `rnd->top`
    116.   #include <openssl/rand.h>
    117.   
    118. > static int bnrand(int pseudorand, BIGNUM *rnd, int bits, int top, int bottom)
    119.   	{
    120.   	unsigned char *buf=NULL;

crypto/bn/bntest.c:981:8: Call
979.   		BN_bntest_rand(b,2+i,0,0); /**/
980.   
981.   		if (!BN_mod_exp_mont_consttime(d,a,b,c,ctx,NULL))
              ^
982.   			return(00);
983.   

crypto/bn/bn_exp.c:574:1: Parameter `a->top`
  572.    * http://www.daemonology.net/hyperthreading-considered-harmful/)
  573.    */
  574. > int BN_mod_exp_mont_consttime(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p,
  575.   		    const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *in_mont)
  576.   	{

crypto/bn/bn_exp.c:650:8: Call
  648.   	if (a->neg || BN_ucmp(a,m) >= 0)
  649.   		{
  650.   		if (!BN_mod(am,a,m,ctx))
                ^
  651.   			goto err;
  652.   		aa= am;

crypto/bn/bn_div.c:181:1: Parameter `num->top`
    179.   static int BN_div_no_branch(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num,
    180.           const BIGNUM *divisor, BN_CTX *ctx);
    181. > int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor,
    182.   	   BN_CTX *ctx)
    183.   	{

crypto/bn/bn_div.c:204:10: Call
    202.   	if ((BN_get_flags(num, BN_FLG_CONSTTIME) != 0) || (BN_get_flags(divisor, BN_FLG_CONSTTIME) != 0))
    203.   		{
    204.   		return BN_div_no_branch(dv, rm, num, divisor, ctx);
                    ^
    205.   		}
    206.   

crypto/bn/bn_div.c:426:1: Parameter `num->top`
      424.    * branches that may leak sensitive information.
      425.    */
      426. > static int BN_div_no_branch(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, 
      427.   	const BIGNUM *divisor, BN_CTX *ctx)
      428.   	{

crypto/bn/bn_div.c:460:8: Call
      458.   	sdiv->neg=0;
      459.   	norm_shift+=BN_BITS2;
      460.   	if (!(BN_lshift(snum,num,norm_shift))) goto err;
                    ^
      461.   	snum->neg=0;
      462.   

crypto/bn/bn_shift.c:132:1: <LHS trace>
130.   	}
131.   
132. > int BN_lshift(BIGNUM *r, const BIGNUM *a, int n)
133.   	{
134.   	int i,nw,lb,rb;

crypto/bn/bn_shift.c:132:1: Parameter `a->top`
        130.   	}
        131.   
        132. > int BN_lshift(BIGNUM *r, const BIGNUM *a, int n)
        133.   	{
        134.   	int i,nw,lb,rb;

crypto/bn/bn_shift.c:150:8: Binary operation: ([0, +oo] - 1):unsigned64 by call to `BN_mod_exp_mont_consttime` 
        148.   	t[a->top+nw]=0;
        149.   	if (lb == 0)
        150.   		for (i=a->top-1; i>=0; i--)
                      ^
        151.   			t[nw+i]=f[i];
        152.   	else
