crypto/pkcs12/p12_key.c:184: error: BUFFER_OVERRUN_L3
  Offset: 0 Size: [0, 8388607] by call to `BN_add_word`.
Showing all 8 steps of the trace


crypto/pkcs12/p12_key.c:182:14: Call
180.               B[j] = Ai[j % u];
181.           /* Work out B + 1 first then can use B as tmp space */
182.           if (!BN_bin2bn(B, v, Bpl1))
                    ^
183.               goto err;
184.           if (!BN_add_word(Bpl1, 1))

crypto/bn/bn_lib.c:542:1: Parameter `*ret->d`
  540.   }
  541.   
  542. > BIGNUM *BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret)
  543.   {
  544.       unsigned int i, m;

crypto/pkcs12/p12_key.c:184:14: Call
182.           if (!BN_bin2bn(B, v, Bpl1))
183.               goto err;
184.           if (!BN_add_word(Bpl1, 1))
                    ^
185.               goto err;
186.           for (j = 0; j < Ilen; j += v) {

crypto/bn/bn_word.c:123:1: Parameter `*a->d`
  121.   }
  122.   
  123. > int BN_add_word(BIGNUM *a, BN_ULONG w)
  124.   {
  125.       BN_ULONG l;

crypto/bn/bn_word.c:140:13: Call
  138.       if (a->neg) {
  139.           a->neg = 0;
  140.           i = BN_sub_word(a, w);
                     ^
  141.           if (!BN_is_zero(a))
  142.               a->neg = !(a->neg);

crypto/bn/bn_word.c:159:1: <Length trace>
157.   }
158.   
159. > int BN_sub_word(BIGNUM *a, BN_ULONG w)
160.   {
161.       int i;

crypto/bn/bn_word.c:159:1: Parameter `*a->d`
    157.   }
    158.   
    159. > int BN_sub_word(BIGNUM *a, BN_ULONG w)
    160.   {
    161.       int i;

crypto/bn/bn_word.c:184:27: Array access: Offset: 0 Size: [0, 8388607] by call to `BN_add_word` 
    182.       }
    183.   
    184.       if ((a->top == 1) && (a->d[0] < w)) {
                                     ^
    185.           a->d[0] = w - a->d[0];
    186.           a->neg = 1;
