test/bntest.c:1559: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned32 by call to `BN_mod_sqrt`.
Showing all 18 steps of the trace


test/bntest.c:1559:10: Call
1557.   
1558.       /* There are two possible answers. */
1559.       if (!TEST_true(BN_mod_sqrt(ret, a, p, ctx))
                 ^
1560.               || !TEST_true(BN_sub(ret2, p, ret)))
1561.           goto err;

crypto/bn/bn_sqrt.c:13:1: Parameter `ctx->stack.depth`
  11.   #include "bn_lcl.h"
  12.   
  13. > BIGNUM *BN_mod_sqrt(BIGNUM *in, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx)
  14.   /*
  15.    * Returns 'ret' such that ret^2 == a (mod p), using the Tonelli/Shanks

crypto/bn/bn_sqrt.c:59:5: Call
  57.       }
  58.   
  59.       BN_CTX_start(ctx);
            ^
  60.       A = BN_CTX_get(ctx);
  61.       b = 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_sqrt.c:75:10: Call
  73.   
  74.       /* A = a mod p */
  75.       if (!BN_nnmod(A, a, p, ctx))
                 ^
  76.           goto end;
  77.   

crypto/bn/bn_mod.c:13:1: Parameter `ctx->stack.depth`
    11.   #include "bn_lcl.h"
    12.   
    13. > int BN_nnmod(BIGNUM *r, const BIGNUM *m, const BIGNUM *d, BN_CTX *ctx)
    14.   {
    15.       /*

crypto/bn/bn_mod.c:20:11: Call
    18.        */
    19.   
    20.       if (!(BN_mod(r, m, d, ctx)))
                    ^
    21.           return 0;
    22.       if (!r->neg)

crypto/bn/bn_div.c:209:1: Parameter `ctx->stack.depth`
      207.    * If 'dv' or 'rm' is NULL, the respective value is not returned.
      208.    */
      209. > int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor,
      210.              BN_CTX *ctx)
      211.   {

crypto/bn/bn_div.c:229:11: Call
      227.       }
      228.   
      229.       ret = bn_div_fixed_top(dv, rm, num, divisor, ctx);
                       ^
      230.   
      231.       if (ret) {

crypto/bn/bn_div.c:264:1: Parameter `ctx->stack.depth`
        262.    *       divisor's length is considered public;
        263.    */
        264. > int bn_div_fixed_top(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num,
        265.                        const BIGNUM *divisor, BN_CTX *ctx)
        266.   {

crypto/bn/bn_div.c:280:5: Call
        278.       bn_check_top(rm);
        279.   
        280.       BN_CTX_start(ctx);
                   ^
        281.       res = (dv == NULL) ? BN_CTX_get(ctx) : dv;
        282.       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_div.c:450:5: Call
        448.       if (rm != NULL)
        449.           bn_rshift_fixed_top(rm, snum, norm_shift);
        450.       BN_CTX_end(ctx);
                   ^
        451.       return 1;
        452.    err:

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_mod_sqrt` 
            274.   static unsigned int BN_STACK_pop(BN_STACK *st)
            275.   {
            276.       return st->indexes[--(st->depth)];
                              ^
            277.   }
            278.   
