crypto/bn/bn_mont.c:492: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned32 by call to `BN_div`.
Showing all 19 steps of the trace


crypto/bn/bn_mont.c:481:8: Call
479.   		tmod.top = buf[0] != 0 ? 1 : 0;
480.   							/* Ri = R^-1 mod N*/
481.   		if ((BN_mod_inverse(Ri,R,&tmod,ctx)) == NULL)
              ^
482.   			goto err;
483.   		if (!BN_lshift(Ri,Ri,BN_BITS2)) goto err; /* R*Ri */

crypto/bn/bn_gcd.c:214:7: Call
  212.   	BIGNUM *rv;
  213.   	int noinv;
  214.   	rv = int_bn_mod_inverse(in, a, n, ctx, &noinv);
               ^
  215.   	if (noinv)
  216.   		BNerr(BN_F_BN_MOD_INVERSE,BN_R_NO_INVERSE);

crypto/bn/bn_gcd.c:220:1: Parameter `ctx->stack.depth`
    218.   	}
    219.   
    220. > BIGNUM *int_bn_mod_inverse(BIGNUM *in,
    221.   	const BIGNUM *a, const BIGNUM *n, BN_CTX *ctx, int *pnoinv)
    222.   	{

crypto/bn/bn_gcd.c:238:2: Call
    236.   	bn_check_top(n);
    237.   
    238.   	BN_CTX_start(ctx);
            ^
    239.   	A = BN_CTX_get(ctx);
    240.   	B = BN_CTX_get(ctx);

crypto/bn/bn_ctx.c:257:1: Parameter `ctx->stack.depth`
      255.   	}
      256.   
      257. > void BN_CTX_start(BN_CTX *ctx)
      258.   	{
      259.   	CTXDBG_ENTRY("BN_CTX_start", ctx);

crypto/bn/bn_gcd.c:513:2: Call
    511.   err:
    512.   	if ((ret == NULL) && (in == NULL)) BN_free(R);
    513.   	BN_CTX_end(ctx);
            ^
    514.   	bn_check_top(ret);
    515.   	return(ret);

crypto/bn/bn_ctx.c:272:1: Parameter `ctx->stack.depth`
      270.   	}
      271.   
      272. > void BN_CTX_end(BN_CTX *ctx)
      273.   	{
      274.   	CTXDBG_ENTRY("BN_CTX_end", ctx);

crypto/bn/bn_mont.c:492:8: Call
490.   			if (!BN_set_word(Ri,BN_MASK2)) goto err;  /* Ri-- (mod word size) */
491.   			}
492.   		if (!BN_div(Ri,NULL,Ri,&tmod,ctx)) goto err;
              ^
493.   		/* Ni = (R*Ri-1)/N,
494.   		 * keep only least significant word: */

crypto/bn/bn_div.c:181:1: Parameter `ctx->stack.depth`
  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:203:10: Call
  201.   	if ((BN_get_flags(num, BN_FLG_CONSTTIME) != 0) || (BN_get_flags(divisor, BN_FLG_CONSTTIME) != 0))
  202.   		{
  203.   		return BN_div_no_branch(dv, rm, num, divisor, ctx);
                  ^
  204.   		}
  205.   

crypto/bn/bn_div.c:426:1: Parameter `ctx->stack.depth`
    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:446:2: Call
    444.   		}
    445.   
    446.   	BN_CTX_start(ctx);
            ^
    447.   	tmp=BN_CTX_get(ctx);
    448.   	snum=BN_CTX_get(ctx);

crypto/bn/bn_ctx.c:257:1: Parameter `ctx->stack.depth`
      255.   	}
      256.   
      257. > void BN_CTX_start(BN_CTX *ctx)
      258.   	{
      259.   	CTXDBG_ENTRY("BN_CTX_start", ctx);

crypto/bn/bn_div.c:642:2: Call
    640.   		}
    641.   	bn_correct_top(res);
    642.   	BN_CTX_end(ctx);
            ^
    643.   	return(1);
    644.   err:

crypto/bn/bn_ctx.c:272:1: Parameter `ctx->stack.depth`
      270.   	}
      271.   
      272. > void BN_CTX_end(BN_CTX *ctx)
      273.   	{
      274.   	CTXDBG_ENTRY("BN_CTX_end", ctx);

crypto/bn/bn_ctx.c:279:21: Call
      277.   	else
      278.   		{
      279.   		unsigned int fp = BN_STACK_pop(&ctx->stack);
                                 ^
      280.   		/* Does this stack frame have anything to release? */
      281.   		if(fp < ctx->used)

crypto/bn/bn_ctx.c:353:1: <LHS trace>
351.   	}
352.   
353. > static unsigned int BN_STACK_pop(BN_STACK *st)
354.   	{
355.   	return st->indexes[--(st->depth)];

crypto/bn/bn_ctx.c:353:1: Parameter `st->depth`
        351.   	}
        352.   
        353. > static unsigned int BN_STACK_pop(BN_STACK *st)
        354.   	{
        355.   	return st->indexes[--(st->depth)];

crypto/bn/bn_ctx.c:355:9: Binary operation: ([0, +oo] - 1):unsigned32 by call to `BN_div` 
        353.   static unsigned int BN_STACK_pop(BN_STACK *st)
        354.   	{
        355.   	return st->indexes[--(st->depth)];
                       ^
        356.   	}
        357.   
