crypto/bn/bn_gf2m.c:741: error: BUFFER_OVERRUN_L3
  Offset: [1, +oo] Size: [0, 8388607] by call to `BN_GF2m_mod_mul`.
Showing all 11 steps of the trace


crypto/bn/bn_gf2m.c:735:14: Call
733.       /* generate blinding value */
734.       do {
735.           if (!BN_priv_rand(b, BN_num_bits(p) - 1,
                    ^
736.                             BN_RAND_TOP_ANY, BN_RAND_BOTTOM_ANY))
737.               goto err;

crypto/bn/bn_rand.c:123:12: Call
  121.   int BN_priv_rand(BIGNUM *rnd, int bits, int top, int bottom)
  122.   {
  123.       return bnrand(PRIVATE, rnd, bits, top, bottom, NULL);
                    ^
  124.   }
  125.   

crypto/bn/bn_rand.c:23:1: Parameter `rnd->top`
    21.   } BNRAND_FLAG;
    22.   
    23. > static int bnrand(BNRAND_FLAG flag, BIGNUM *rnd, int bits, int top, int bottom,
    24.                     BN_CTX *ctx)
    25.   {

crypto/bn/bn_gf2m.c:741:10: Call
739.   
740.       /* r := a * b */
741.       if (!BN_GF2m_mod_mul(r, a, b, p, ctx))
                ^
742.           goto err;
743.   

crypto/bn/bn_gf2m.c:465:1: Parameter `*b->d`
  463.    * BN_GF2m_mod_mul_arr function.
  464.    */
  465. > int BN_GF2m_mod_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
  466.                       const BIGNUM *p, BN_CTX *ctx)
  467.   {

crypto/bn/bn_gf2m.c:481:11: Call
  479.           goto err;
  480.       }
  481.       ret = BN_GF2m_mod_mul_arr(r, a, b, arr, ctx);
                   ^
  482.       bn_check_top(r);
  483.    err:

crypto/bn/bn_gf2m.c:410:1: <Offset trace>
408.    * the result in r.  r could be a or b; a could be b.
409.    */
410. > int BN_GF2m_mod_mul_arr(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
411.                           const int p[], BN_CTX *ctx)
412.   {

crypto/bn/bn_gf2m.c:410:1: Parameter `b->top`
    408.    * the result in r.  r could be a or b; a could be b.
    409.    */
    410. > int BN_GF2m_mod_mul_arr(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
    411.                           const int p[], BN_CTX *ctx)
    412.   {

crypto/bn/bn_gf2m.c:410:1: <Length trace>
408.    * the result in r.  r could be a or b; a could be b.
409.    */
410. > int BN_GF2m_mod_mul_arr(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
411.                           const int p[], BN_CTX *ctx)
412.   {

crypto/bn/bn_gf2m.c:410:1: Parameter `*b->d`
    408.    * the result in r.  r could be a or b; a could be b.
    409.    */
    410. > int BN_GF2m_mod_mul_arr(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
    411.                           const int p[], BN_CTX *ctx)
    412.   {

crypto/bn/bn_gf2m.c:438:40: Array access: Offset: [1, +oo] Size: [0, 8388607] by call to `BN_GF2m_mod_mul` 
    436.       for (j = 0; j < b->top; j += 2) {
    437.           y0 = b->d[j];
    438.           y1 = ((j + 1) == b->top) ? 0 : b->d[j + 1];
                                                  ^
    439.           for (i = 0; i < a->top; i += 2) {
    440.               x0 = a->d[i];
