[PATCH 12/12] test/ipsec: fix build with GCC 12
David Marchand
david.marchand at redhat.com
Fri Jun 3 09:45:45 CEST 2022
Hello Vladimir,
On Thu, Jun 2, 2022 at 8:42 PM Medvedkin, Vladimir
<vladimir.medvedkin at intel.com> wrote:
> > if (!dst) {
> > rte_pktmbuf_free(m);
> > return NULL;
> > }
> > - if (string != NULL)
> > - rte_memcpy(dst, string, t_len);
> > - else
> > - memset(dst, 0, t_len);
> > + if (string != NULL) {
> > + size_t off;
> > +
> > + for (off = 0; off + string_len < len; off += string_len)
>
> I think it should be off + string_len <= len here, because otherwise, if
> len is a multiple of string_len, the last ret_memcpy (after this loop)
> will copy 0 bytes.
Changing to off + string_len <= len would trigger an oob access to dst
(by one extra byte)?
Otoh, I don't think it is an issue to have a 0-length call to rte_memcpy.
>
> > + rte_memcpy(&dst[off], string, string_len);
> > + rte_memcpy(&dst[off], string, len % string_len);
--
David Marchand
More information about the stable
mailing list