crypto/bn/bn_mod.c:160: error: INTEGER_OVERFLOW_L2
  ([-`*m->d`, +oo] - 1):unsigned64 by call to `BN_usub`.
Showing all 8 steps of the trace


crypto/bn/bn_mod.c:154:1: Parameter `*m->d`
152.    * less than m
153.    */
154. > int BN_mod_add_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
155.                        const BIGNUM *m)
156.   {

crypto/bn/bn_mod.c:159:9: Call
157.       if (!BN_uadd(r, a, b))
158.           return 0;
159.       if (BN_ucmp(r, m) >= 0)
               ^
160.           return BN_usub(r, r, m);
161.       return 1;

crypto/bn/bn_lib.c:604:1: Parameter `*b->d`
  602.   }
  603.   
  604. > int BN_ucmp(const BIGNUM *a, const BIGNUM *b)
  605.   {
  606.       int i;

crypto/bn/bn_mod.c:160:16: Call
158.           return 0;
159.       if (BN_ucmp(r, m) >= 0)
160.           return BN_usub(r, r, m);
                      ^
161.       return 1;
162.   }

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:195:9: Assignment
  193.       carry = 0;
  194.       for (i = min; i != 0; i--) {
  195.           t1 = *(ap++);
                 ^
  196.           t2 = *(bp++);
  197.           if (carry) {

crypto/bn/bn_add.c:199:13: Binary operation: ([-*m->d, +oo] - 1):unsigned64 by call to `BN_usub` 
  197.           if (carry) {
  198.               carry = (t1 <= t2);
  199.               t1 = (t1 - t2 - 1) & BN_MASK2;
                     ^
  200.           } else {
  201.               carry = (t1 < t2);
