crypto/rsa/rsa_ossl.c:851: error: BUFFER_OVERRUN_L3
  Offset: 0 Size: [0, 8388607] by call to `BN_sub`.
Showing all 12 steps of the trace


crypto/rsa/rsa_ossl.c:701:14: Call
699.           BN_with_flags(c, I, BN_FLG_CONSTTIME);
700.   
701.           if (!BN_mod(r1, c, rsa->q, ctx)) {
                    ^
702.               BN_free(c);
703.               goto err;

crypto/bn/bn_div.c:137:1: Parameter `*dv->d`
  135.    * If 'dv' or 'rm' is NULL, the respective value is not returned.
  136.    */
  137. > int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor,
  138.              BN_CTX *ctx)
  139.   {

crypto/bn/bn_div.c:252:10: Call
  250.   
  251.       /* Setup to 'res' */
  252.       if (!bn_wexpand(res, (loop + 1)))
                  ^
  253.           goto err;
  254.       res->neg = (num->neg ^ divisor->neg);

crypto/bn/bn_lib.c:948:1: Parameter `*a->d`
    946.   }
    947.   
    948. > BIGNUM *bn_wexpand(BIGNUM *a, int words)
    949.   {
    950.       return (words <= a->dmax) ? a : bn_expand2(a, words);

crypto/rsa/rsa_ossl.c:851:18: Call
849.           for (i = 0; i < ex_primes; i++) {
850.               pinfo = sk_RSA_PRIME_INFO_value(rsa->prime_infos, i);
851.               if (!BN_sub(r1, m[i], r0)) {
                        ^
852.                   BN_free(pr2);
853.                   goto err;

crypto/bn/bn_add.c:45:1: Parameter `*r->d`
  43.   
  44.   /* signed sub of b from a. */
  45. > int BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b)
  46.   {
  47.       int ret, r_neg, cmp_res;

crypto/bn/bn_add.c:65:13: Call
  63.           } else {
  64.               r_neg = 0;
  65.               BN_zero(r);
                    ^
  66.               ret = 1;
  67.           }

crypto/bn/bn_lib.c:359:1: <Length trace>
357.   }
358.   
359. > int BN_set_word(BIGNUM *a, BN_ULONG w)
360.   {
361.       bn_check_top(a);

crypto/bn/bn_lib.c:359:1: Parameter `*a->d`
    357.   }
    358.   
    359. > int BN_set_word(BIGNUM *a, BN_ULONG w)
    360.   {
    361.       bn_check_top(a);

crypto/bn/bn_lib.c:362:9: Call
    360.   {
    361.       bn_check_top(a);
    362.       if (bn_expand(a, (int)sizeof(BN_ULONG) * 8) == NULL)
                   ^
    363.           return 0;
    364.       a->neg = 0;

crypto/bn/bn_lcl.h:660:1: Parameter `*a->d`
      658.                            const BIGNUM *add, const BIGNUM *rem, BN_CTX *ctx);
      659.   
      660. > static ossl_inline BIGNUM *bn_expand(BIGNUM *a, int bits)
      661.   {
      662.       if (bits > (INT_MAX - BN_BITS2 + 1))

crypto/bn/bn_lib.c:365:5: Array access: Offset: 0 Size: [0, 8388607] by call to `BN_sub` 
    363.           return 0;
    364.       a->neg = 0;
    365.       a->d[0] = w;
               ^
    366.       a->top = (w ? 1 : 0);
    367.       a->flags &= ~BN_FLG_FIXED_TOP;
