Re: [GIT PULL] hardening fixes for v6.6-rc3

From: Linus Torvalds
Date: Fri Sep 22 2023 - 19:56:27 EST


On Fri, 22 Sept 2023 at 09:59, Kees Cook <keescook@xxxxxxxxxxxx> wrote:
>
> - Fix UAPI stddef.h to avoid C++-ism (Alexey Dobriyan)

Ugh. Did we really have to make two different versions of that define?

Ok, so C++ did something stupid wrt an empty struct. Fine.

But I think we could have still shared the same definition by just
using the same 'zero-sized array' trick, regardless of any 'empty
struct has a size in C++'.

IOW, wouldn't this just work universally, without any "two completely
different versions" hack?

#define __DECLARE_FLEX_ARRAY(TYPE, NAME) \
struct { \
char __empty_ ## NAME[0]; \
TYPE NAME[]; \
}

I didn't test. I'm just hating on that '#ifdef __cplusplus'.

Linus