crypto/bn/bn_blind.c:318: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned32 by call to `BN_mod_inverse`.
Showing all 17 steps of the trace


crypto/bn/bn_blind.c:280:1: Parameter `ctx->stack.depth`
278.   	}
279.   
280. > BN_BLINDING *BN_BLINDING_create_param(BN_BLINDING *b,
281.   	const BIGNUM *e, BIGNUM *m, BN_CTX *ctx,
282.   	int (*bn_mod_exp)(BIGNUM *r, const BIGNUM *a, const BIGNUM *p,

crypto/bn/bn_blind.c:318:7: Call
316.   	do {
317.   		if (!BN_rand_range(ret->A, ret->mod)) goto err;
318.   		if (BN_mod_inverse(ret->Ai, ret->A, ret->mod, ctx) == NULL)
             ^
319.   			{
320.   			/* this should almost never happen for good RSA keys */

crypto/bn/bn_gcd.c:206:1: Parameter `ctx->stack.depth`
  204.   
  205.   /* solves ax == 1 (mod n) */
  206. > BIGNUM *BN_mod_inverse(BIGNUM *in,
  207.   	const BIGNUM *a, const BIGNUM *n, BN_CTX *ctx)
  208.   	{

crypto/bn/bn_gcd.c:216:2: Call
  214.   	bn_check_top(n);
  215.   
  216.   	BN_CTX_start(ctx);
          ^
  217.   	A = BN_CTX_get(ctx);
  218.   	B = BN_CTX_get(ctx);

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

crypto/bn/bn_gcd.c:239:8: Call
  237.   	if (B->neg || (BN_ucmp(B, A) >= 0))
  238.   		{
  239.   		if (!BN_nnmod(B, B, A, ctx)) goto err;
                ^
  240.   		}
  241.   	sign = -1;

crypto/bn/bn_mod.c:127:1: Parameter `ctx->stack.depth`
    125.   
    126.   
    127. > int BN_nnmod(BIGNUM *r, const BIGNUM *m, const BIGNUM *d, BN_CTX *ctx)
    128.   	{
    129.   	/* like BN_mod, but returns non-negative remainder

crypto/bn/bn_mod.c:132:8: Call
    130.   	 * (i.e.,  0 <= r < |d|  always holds) */
    131.   
    132.   	if (!(BN_mod(r,m,d,ctx)))
                  ^
    133.   		return 0;
    134.   	if (!r->neg)

crypto/bn/bn_div.c:179:1: Parameter `ctx->stack.depth`
      177.    * If 'dv' or 'rm' is NULL, the respective value is not returned.
      178.    */
      179. > int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor,
      180.   	   BN_CTX *ctx)
      181.   	{

crypto/bn/bn_div.c:209:2: Call
      207.   		}
      208.   
      209.   	BN_CTX_start(ctx);
              ^
      210.   	tmp=BN_CTX_get(ctx);
      211.   	snum=BN_CTX_get(ctx);

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

crypto/bn/bn_div.c:394:2: Call
      392.   		bn_check_top(rm);
      393.   		}
      394.   	BN_CTX_end(ctx);
              ^
      395.   	return(1);
      396.   err:

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

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

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

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

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