crypto/ec/ecp_oct.c:179: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned64 by call to `BN_usub`.
Showing all 12 steps of the trace


crypto/ec/ecp_oct.c:142:8: Call
140.   		{
141.   		if (!group->meth->field_decode(group, tmp2, group->b, ctx)) goto err;
142.   		if (!BN_mod_add_quick(tmp1, tmp1, tmp2, group->field)) goto err;
              ^
143.   		}
144.   	else

crypto/bn/bn_mod.c:154:7: Call
  152.   int BN_mod_add_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m)
  153.   	{
  154.   	if (!BN_uadd(r, a, b)) return 0;
               ^
  155.   	if (BN_ucmp(r, m) >= 0)
  156.   		return BN_usub(r, r, m);

crypto/bn/bn_add.c:154:4: Assignment
    152.   			{
    153.   			/* carry != 0 => dif == 0 */
    154.   			*rp = 1;
              ^
    155.   			r->top++;
    156.   			}

crypto/ec/ecp_oct.c:149:7: Call
147.   		}
148.   	
149.   	if (!BN_mod_sqrt(y, tmp1, group->field, ctx))
             ^
150.   		{
151.   		unsigned long err = ERR_peek_last_error();

crypto/bn/bn_sqrt.c:62:1: Parameter `*a->d`
  60.   
  61.   
  62. > BIGNUM *BN_mod_sqrt(BIGNUM *in, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) 
  63.   /* Returns 'ret' such that
  64.    *      ret^2 == a (mod p),

crypto/ec/ecp_oct.c:163:15: Call
161.   		}
162.   
163.   	if (y_bit != BN_is_odd(y))
                     ^
164.   		{
165.   		if (BN_is_zero(y))

crypto/bn/bn_lib.c:885:1: Parameter `*a->d`
  883.   	}
  884.   
  885. > int BN_is_odd(const BIGNUM *a)
  886.   	{
  887.   	return (a->top > 0) && (a->d[0] & 1);

crypto/ec/ecp_oct.c:179:8: Call
177.   			goto err;
178.   			}
179.   		if (!BN_usub(y, group->field, y)) goto err;
              ^
180.   		}
181.   	if (y_bit != BN_is_odd(y))

crypto/bn/bn_add.c:168:1: <LHS trace>
166.   
167.   /* unsigned subtraction of b from a, a must be larger than b. */
168. > int BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b)
169.   	{
170.   	int max,min,dif;

crypto/bn/bn_add.c:168:1: Parameter `*a->d`
  166.   
  167.   /* unsigned subtraction of b from a, a must be larger than b. */
  168. > int BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b)
  169.   	{
  170.   	int max,min,dif;

crypto/bn/bn_add.c:226:4: Assignment
  224.   			{
  225.   			dif--;
  226.   			t1 = *(ap++);
            ^
  227.   			t2 = (t1-1)&BN_MASK2;
  228.   			*(rp++) = t2;

crypto/bn/bn_add.c:227:4: Binary operation: ([0, +oo] - 1):unsigned64 by call to `BN_usub` 
  225.   			dif--;
  226.   			t1 = *(ap++);
  227.   			t2 = (t1-1)&BN_MASK2;
            ^
  228.   			*(rp++) = t2;
  229.   			if (t1)
