crypto/bn/bn_exp.c:1218: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned32 by call to `BN_to_montgomery`.
Showing all 21 steps of the trace


crypto/bn/bn_exp.c:1132:1: Parameter `ctx->stack.depth`
1130.   }
1131.   
1132. > int BN_mod_exp_mont_word(BIGNUM *rr, BN_ULONG a, const BIGNUM *p,
1133.                            const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *in_mont)
1134.   {

crypto/bn/bn_exp.c:1192:5: Call
1190.       }
1191.   
1192.       BN_CTX_start(ctx);
            ^
1193.       r = BN_CTX_get(ctx);
1194.       t = BN_CTX_get(ctx);

crypto/bn/bn_ctx.c:181:1: Parameter `ctx->stack.depth`
  179.   }
  180.   
  181. > void BN_CTX_start(BN_CTX *ctx)
  182.   {
  183.       CTXDBG_ENTRY("BN_CTX_start", ctx);

crypto/bn/bn_exp.c:1218:22: Call
1216.           if ((next_w / w) != w) { /* overflow */
1217.               if (r_is_one) {
1218.                   if (!BN_TO_MONTGOMERY_WORD(r, w, mont))
                             ^
1219.                       goto err;
1220.                   r_is_one = 0;

crypto/bn/bn_lib.c:878:1: Parameter `ctx->stack.depth`
  876.   }
  877.   
  878. > int BN_to_montgomery(BIGNUM *r, const BIGNUM *a, BN_MONT_CTX *mont,
  879.                        BN_CTX *ctx)
  880.   {

crypto/bn/bn_lib.c:881:12: Call
  879.                        BN_CTX *ctx)
  880.   {
  881.       return BN_mod_mul_montgomery(r, a, &(mont->RR), mont, ctx);
                    ^
  882.   }
  883.   

crypto/bn/bn_mont.c:26:1: Parameter `ctx->stack.depth`
    24.   #endif
    25.   
    26. > int BN_mod_mul_montgomery(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
    27.                             BN_MONT_CTX *mont, BN_CTX *ctx)
    28.   {

crypto/bn/bn_mont.c:29:15: Call
    27.                             BN_MONT_CTX *mont, BN_CTX *ctx)
    28.   {
    29.       int ret = bn_mul_mont_fixed_top(r, a, b, mont, ctx);
                        ^
    30.   
    31.       bn_correct_top(r);

crypto/bn/bn_mont.c:37:1: Parameter `ctx->stack.depth`
      35.   }
      36.   
      37. > int bn_mul_mont_fixed_top(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
      38.                             BN_MONT_CTX *mont, BN_CTX *ctx)
      39.   {

crypto/bn/bn_mont.c:60:5: Call
      58.           return 0;
      59.   
      60.       BN_CTX_start(ctx);
                ^
      61.       tmp = BN_CTX_get(ctx);
      62.       if (tmp == NULL)

crypto/bn/bn_ctx.c:181:1: Parameter `ctx->stack.depth`
        179.   }
        180.   
        181. > void BN_CTX_start(BN_CTX *ctx)
        182.   {
        183.       CTXDBG_ENTRY("BN_CTX_start", ctx);

crypto/bn/bn_mont.c:67:14: Call
      65.       bn_check_top(tmp);
      66.       if (a == b) {
      67.           if (!BN_sqr(tmp, a, ctx))
                         ^
      68.               goto err;
      69.       } else {

crypto/bn/bn_sqr.c:17:1: Parameter `ctx->stack.depth`
        15.    * I've just gone over this and it is now %20 faster on x86 - eay - 27 Jun 96
        16.    */
        17. > int BN_sqr(BIGNUM *r, const BIGNUM *a, BN_CTX *ctx)
        18.   {
        19.       int max, al;

crypto/bn/bn_sqr.c:32:5: Call
        30.       }
        31.   
        32.       BN_CTX_start(ctx);
                  ^
        33.       rr = (a != r) ? r : BN_CTX_get(ctx);
        34.       tmp = BN_CTX_get(ctx);

crypto/bn/bn_ctx.c:181:1: Parameter `ctx->stack.depth`
          179.   }
          180.   
          181. > void BN_CTX_start(BN_CTX *ctx)
          182.   {
          183.       CTXDBG_ENTRY("BN_CTX_start", ctx);

crypto/bn/bn_sqr.c:94:5: Call
        92.       bn_check_top(rr);
        93.       bn_check_top(tmp);
        94.       BN_CTX_end(ctx);
                  ^
        95.       return ret;
        96.   }

crypto/bn/bn_ctx.c:195:1: Parameter `ctx->stack.depth`
          193.   }
          194.   
          195. > void BN_CTX_end(BN_CTX *ctx)
          196.   {
          197.       CTXDBG_ENTRY("BN_CTX_end", ctx);

crypto/bn/bn_ctx.c:201:27: Call
          199.           ctx->err_stack--;
          200.       else {
          201.           unsigned int fp = BN_STACK_pop(&ctx->stack);
                                           ^
          202.           /* Does this stack frame have anything to release? */
          203.           if (fp < ctx->used)

crypto/bn/bn_ctx.c:274:1: <LHS trace>
272.   }
273.   
274. > static unsigned int BN_STACK_pop(BN_STACK *st)
275.   {
276.       return st->indexes[--(st->depth)];

crypto/bn/bn_ctx.c:274:1: Parameter `st->depth`
            272.   }
            273.   
            274. > static unsigned int BN_STACK_pop(BN_STACK *st)
            275.   {
            276.       return st->indexes[--(st->depth)];

crypto/bn/bn_ctx.c:276:12: Binary operation: ([0, +oo] - 1):unsigned32 by call to `BN_to_montgomery` 
            274.   static unsigned int BN_STACK_pop(BN_STACK *st)
            275.   {
            276.       return st->indexes[--(st->depth)];
                              ^
            277.   }
            278.   
