crypto/bn/bn_prime.c:381: error: BUFFER_OVERRUN_L3
  Offset: 0 Size: [0, 8388607] by call to `BN_pseudo_rand_range`.
Showing all 11 steps of the trace


crypto/bn/bn_prime.c:343:18: Call
341.       if (a->neg) {
342.           BIGNUM *t;
343.           if ((t = BN_CTX_get(ctx)) == NULL)
                        ^
344.               goto err;
345.           BN_copy(t, a);

crypto/bn/bn_ctx.c:284:5: Call
  282.       }
  283.       /* OK, make sure the returned bignum is "zero" */
  284.       BN_zero(ret);
             ^
  285.       ctx->used++;
  286.       CTXDBG_RET(ctx, ret);

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_prime.c:381:14: Call
379.   
380.       for (i = 0; i < checks; i++) {
381.           if (!BN_pseudo_rand_range(check, A1))
                    ^
382.               goto err;
383.           if (!BN_add_word(check, 1))

crypto/bn/bn_rand.c:286:1: Parameter `*r->d`
  284.   }
  285.   
  286. > int BN_pseudo_rand_range(BIGNUM *r, const BIGNUM *range)
  287.   {
  288.       return bn_rand_range(1, r, range);

crypto/bn/bn_rand.c:288:12: Call
  286.   int BN_pseudo_rand_range(BIGNUM *r, const BIGNUM *range)
  287.   {
  288.       return bn_rand_range(1, r, range);
                    ^
  289.   }
  290.   

crypto/bn/bn_rand.c:216:1: Parameter `*r->d`
    214.   
    215.   /* random number r:  0 <= r < range */
    216. > static int bn_rand_range(int pseudo, BIGNUM *r, const BIGNUM *range)
    217.   {
    218.       int (*bn_rand) (BIGNUM *, int, int, int) =

crypto/bn/bn_rand.c:233:9: Call
    231.   
    232.       if (n == 1)
    233.           BN_zero(r);
                   ^
    234.       else if (!BN_is_bit_set(range, n - 2) && !BN_is_bit_set(range, n - 3)) {
    235.           /*

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_pseudo_rand_range` 
      534.           return (0);
      535.       a->neg = 0;
      536.       a->d[0] = w;
                 ^
      537.       a->top = (w ? 1 : 0);
      538.       bn_check_top(a);
