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


crypto/bn/bn_gf2m.c:851:1: Parameter `ctx->stack.depth`
849.    * P1363.
850.    */
851. > int BN_GF2m_mod_exp_arr(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
852.                           const int p[], BN_CTX *ctx)
853.   {

crypto/bn/bn_gf2m.c:866:5: Call
864.           return (BN_copy(r, a) != NULL);
865.   
866.       BN_CTX_start(ctx);
           ^
867.       if ((u = BN_CTX_get(ctx)) == NULL)
868.           goto err;

crypto/bn/bn_ctx.c:171:1: Parameter `ctx->stack.depth`
  169.   }
  170.   
  171. > void BN_CTX_start(BN_CTX *ctx)
  172.   {
  173.       CTXDBG("ENTER BN_CTX_start()", ctx);

crypto/bn/bn_gf2m.c:875:14: Call
873.       n = BN_num_bits(b) - 1;
874.       for (i = n - 1; i >= 0; i--) {
875.           if (!BN_GF2m_mod_sqr_arr(u, u, p, ctx))
                    ^
876.               goto err;
877.           if (BN_is_bit_set(b, i)) {

crypto/bn/bn_gf2m.c:489:1: Parameter `ctx->stack.depth`
  487.   
  488.   /* Square a, reduce the result mod p, and store it in a.  r could be a. */
  489. > int BN_GF2m_mod_sqr_arr(BIGNUM *r, const BIGNUM *a, const int p[],
  490.                           BN_CTX *ctx)
  491.   {

crypto/bn/bn_gf2m.c:496:5: Call
  494.   
  495.       bn_check_top(a);
  496.       BN_CTX_start(ctx);
             ^
  497.       if ((s = BN_CTX_get(ctx)) == NULL)
  498.           goto err;

crypto/bn/bn_ctx.c:171:1: Parameter `ctx->stack.depth`
    169.   }
    170.   
    171. > void BN_CTX_start(BN_CTX *ctx)
    172.   {
    173.       CTXDBG("ENTER BN_CTX_start()", ctx);

crypto/bn/bn_gf2m.c:514:5: Call
  512.       ret = 1;
  513.    err:
  514.       BN_CTX_end(ctx);
             ^
  515.       return ret;
  516.   }

crypto/bn/bn_ctx.c:185:1: Parameter `ctx->stack.depth`
    183.   }
    184.   
    185. > void BN_CTX_end(BN_CTX *ctx)
    186.   {
    187.       if (ctx == NULL)

crypto/bn/bn_gf2m.c:878:18: Call
876.               goto err;
877.           if (BN_is_bit_set(b, i)) {
878.               if (!BN_GF2m_mod_mul_arr(u, u, a, p, ctx))
                        ^
879.                   goto err;
880.           }

crypto/bn/bn_gf2m.c:410:1: Parameter `ctx->stack.depth`
  408.    * the result in r.  r could be a or b; a could be b.
  409.    */
  410. > int BN_GF2m_mod_mul_arr(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
  411.                           const int p[], BN_CTX *ctx)
  412.   {

crypto/bn/bn_gf2m.c:421:16: Call
  419.   
  420.       if (a == b) {
  421.           return BN_GF2m_mod_sqr_arr(r, a, p, ctx);
                        ^
  422.       }
  423.   

crypto/bn/bn_gf2m.c:489:1: Parameter `ctx->stack.depth`
    487.   
    488.   /* Square a, reduce the result mod p, and store it in a.  r could be a. */
    489. > int BN_GF2m_mod_sqr_arr(BIGNUM *r, const BIGNUM *a, const int p[],
    490.                           BN_CTX *ctx)
    491.   {

crypto/bn/bn_gf2m.c:496:5: Call
    494.   
    495.       bn_check_top(a);
    496.       BN_CTX_start(ctx);
               ^
    497.       if ((s = BN_CTX_get(ctx)) == NULL)
    498.           goto err;

crypto/bn/bn_ctx.c:171:1: Parameter `ctx->stack.depth`
      169.   }
      170.   
      171. > void BN_CTX_start(BN_CTX *ctx)
      172.   {
      173.       CTXDBG("ENTER BN_CTX_start()", ctx);

crypto/bn/bn_gf2m.c:514:5: Call
    512.       ret = 1;
    513.    err:
    514.       BN_CTX_end(ctx);
               ^
    515.       return ret;
    516.   }

crypto/bn/bn_ctx.c:185:1: Parameter `ctx->stack.depth`
      183.   }
      184.   
      185. > void BN_CTX_end(BN_CTX *ctx)
      186.   {
      187.       if (ctx == NULL)

crypto/bn/bn_ctx.c:193:27: Call
      191.           ctx->err_stack--;
      192.       else {
      193.           unsigned int fp = BN_STACK_pop(&ctx->stack);
                                       ^
      194.           /* Does this stack frame have anything to release? */
      195.           if (fp < ctx->used)

crypto/bn/bn_ctx.c:268:1: <LHS trace>
266.   }
267.   
268. > static unsigned int BN_STACK_pop(BN_STACK *st)
269.   {
270.       return st->indexes[--(st->depth)];

crypto/bn/bn_ctx.c:268:1: Parameter `st->depth`
        266.   }
        267.   
        268. > static unsigned int BN_STACK_pop(BN_STACK *st)
        269.   {
        270.       return st->indexes[--(st->depth)];

crypto/bn/bn_ctx.c:270:12: Binary operation: ([0, +oo] - 1):unsigned32 by call to `BN_GF2m_mod_mul_arr` 
        268.   static unsigned int BN_STACK_pop(BN_STACK *st)
        269.   {
        270.       return st->indexes[--(st->depth)];
                          ^
        271.   }
        272.   
