crypto/evp/e_chacha20_poly1305.c:224: error: BUFFER_OVERRUN_L2
  Offset: [3, 18] (⇐ [0, 15] + 3) Size: 16 by call to `chacha_init_key`.
Showing all 5 steps of the trace


crypto/evp/e_chacha20_poly1305.c:203:1: Array declaration
201.   #  define POLY1305_ctx(actx)    ((POLY1305 *)(actx + 1))
202.   
203. > static int chacha20_poly1305_init_key(EVP_CIPHER_CTX *ctx,
204.                                         const unsigned char *inkey,
205.                                         const unsigned char *iv, int enc)

crypto/evp/e_chacha20_poly1305.c:224:5: Call
222.           memcpy(temp + CHACHA_CTR_SIZE - actx->nonce_len, iv, actx->nonce_len);
223.   
224.       chacha_init_key(ctx, inkey, temp, enc);
           ^
225.   
226.       actx->nonce[0] = actx->key.counter[1];

crypto/evp/e_chacha20_poly1305.c:74:1: <Length trace>
72.   #define data(ctx)   ((EVP_CHACHA_KEY *)(ctx)->cipher_data)
73.   
74. > static int chacha_init_key(EVP_CIPHER_CTX *ctx,
75.                              const unsigned char user_key[CHACHA_KEY_SIZE],
76.                              const unsigned char iv[CHACHA_CTR_SIZE], int enc)

crypto/evp/e_chacha20_poly1305.c:74:1: Parameter `*iv`
  72.   #define data(ctx)   ((EVP_CHACHA_KEY *)(ctx)->cipher_data)
  73.   
  74. > static int chacha_init_key(EVP_CIPHER_CTX *ctx,
  75.                              const unsigned char user_key[CHACHA_KEY_SIZE],
  76.                              const unsigned char iv[CHACHA_CTR_SIZE], int enc)

crypto/evp/e_chacha20_poly1305.c:88:33: Array access: Offset: [3, 18] (⇐ [0, 15] + 3) Size: 16 by call to `chacha_init_key` 
  86.       if (iv)
  87.           for (i = 0; i < CHACHA_CTR_SIZE; i+=4) {
  88.               key->counter[i/4] = CHACHA_U8TOU32(iv+i);
                                        ^
  89.           }
  90.   
