crypto/bn/bn_mont.c:281: error: INTEGER_OVERFLOW_L2
  ([-`*mont->N.d`, +oo] - 1):unsigned32 by call to `BN_usub`.
Showing all 6 steps of the trace


crypto/bn/bn_mont.c:177:1: Parameter `*r->d`
175.   
176.   #ifdef MONT_WORD
177. > static int BN_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont)
178.   	{
179.   	BIGNUM *n;

crypto/bn/bn_mont.c:281:8: Call
279.   	if (BN_ucmp(ret, &(mont->N)) >= 0)
280.   		{
281.   		if (!BN_usub(ret,ret,&(mont->N))) return(0);
              ^
282.   		}
283.   	bn_check_top(ret);

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

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

crypto/bn/bn_add.c:198:3: Assignment
  196.   	for (i = min; i != 0; i--)
  197.   		{
  198.   		t1= *(ap++);
           ^
  199.   		t2= *(bp++);
  200.   		if (carry)

crypto/bn/bn_add.c:203:4: Binary operation: ([-*mont->N.d, +oo] - 1):unsigned32 by call to `BN_usub` 
  201.   			{
  202.   			carry=(t1 <= t2);
  203.   			t1=(t1-t2-1)&BN_MASK2;
            ^
  204.   			}
  205.   		else
