crypto/rsa/rsa_gen.c:178: error: BUFFER_OVERRUN_L3
  Offset: 0 Size: [0, 8388607] by call to `BN_mul`.
Showing all 7 steps of the trace


crypto/rsa/rsa_gen.c:88:1: Parameter `rsa->n->d`
86.   }
87.   
88. > static int rsa_builtin_keygen(RSA *rsa, int bits, BIGNUM *e_value,
89.                                 BN_GENCB *cb)
90.   {

crypto/rsa/rsa_gen.c:178:10: Call
176.   
177.       /* calculate n */
178.       if (!BN_mul(rsa->n, rsa->p, rsa->q, ctx))
                ^
179.           goto err;
180.   

crypto/bn/bn_mul.c:883:1: Parameter `*r->d`
  881.   #endif                          /* BN_RECURSION */
  882.   
  883. > int BN_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx)
  884.   {
  885.       int ret = 0;

crypto/bn/bn_mul.c:904:9: Call
  902.   
  903.       if ((al == 0) || (bl == 0)) {
  904.           BN_zero(r);
                 ^
  905.           return (1);
  906.       }

crypto/bn/bn_lib.c:530:1: <Length trace>
528.   }
529.   
530. > int BN_set_word(BIGNUM *a, BN_ULONG w)
531.   {
532.       bn_check_top(a);

crypto/bn/bn_lib.c:530:1: Parameter `*a->d`
    528.   }
    529.   
    530. > int BN_set_word(BIGNUM *a, BN_ULONG w)
    531.   {
    532.       bn_check_top(a);

crypto/bn/bn_lib.c:536:5: Array access: Offset: 0 Size: [0, 8388607] by call to `BN_mul` 
    534.           return (0);
    535.       a->neg = 0;
    536.       a->d[0] = w;
               ^
    537.       a->top = (w ? 1 : 0);
    538.       bn_check_top(a);
