Re: [RFC] xfrm: convert alg_key to flexible array member

From: Steffen Klassert
Date: Thu Jun 23 2022 - 06:49:57 EST


On Thu, Jun 02, 2022 at 12:45:15PM +0200, Steffen Klassert wrote:
> On Tue, May 24, 2022 at 01:47:40PM -0700, Stephen Hemminger wrote:
> > Iproute2 build generates a warning when built with gcc-12.
> > This is because the alg_key in xfrm.h API has zero size
> > array element instead of flexible array.
> >
> > CC xfrm_state.o
> > In function ‘xfrm_algo_parse’,
> > inlined from ‘xfrm_state_modify.constprop’ at xfrm_state.c:573:5:
> > xfrm_state.c:162:32: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
> > 162 | buf[j] = val;
> > | ~~~~~~~^~~~~
> >
> > This patch convert the alg_key into flexible array member.
> > There are other zero size arrays here that should be converted as
> > well.
> >
> > This patch is RFC only since it is only compile tested and
> > passes trivial iproute2 tests.
> >
> > Signed-off-by: Stephen Hemminger <stephen@xxxxxxxxxxxxxxxxxx>
>
> I've put this today to our test systems and it showed no problems,
> so we can integrate it after the merge window.

This is now applied to ipsec-next, thanks!