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


crypto/bn/bn_prime.c:235:9: Call
233.           goto err;
234.       BN_CTX_start(ctx);
235.       t = BN_CTX_get(ctx);
               ^
236.       if (!t)
237.           goto err;

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:268:14: Call
266.            * prime is odd, We just need to divide by 2
267.            */
268.           if (!BN_rshift1(t, ret))
                    ^
269.               goto err;
270.   

crypto/bn/bn_shift.c:95:1: Parameter `*r->d`
  93.   }
  94.   
  95. > int BN_rshift1(BIGNUM *r, const BIGNUM *a)
  96.   {
  97.       BN_ULONG *ap, *rp, t, c;

crypto/bn/bn_shift.c:104:9: Call
  102.   
  103.       if (BN_is_zero(a)) {
  104.           BN_zero(r);
                 ^
  105.           return (1);
  106.       }

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