On Tue, May 9, 2017 at 1:11 AM, David Howells <[email protected]> wrote: > Kees Cook <[email protected]> wrote: > >> This doesn't protect you against changes in struct path size, >> though... the existing code (and this proposal) will break if that >> ever happens... > > True - in which case you should kmalloc() it as Eric suggests. > >> What's the problem with defining the types at the top level? That >> seems like a nice place to see them all at once. > > It means adding a bunch of dependencies to linux/key.h and union key_payload. > > Have you considered why we don't just put all the definitions for all the > filesystems in linux/fs.h? By this logic it would seem like a nice place to > see them all at once.
I've seen other things that want to share a structure use embedded structures, etc. I'll see if there is something else to be done, but just cleaning up the casts alone makes the big_key code so much more readable. :P -Kees -- Kees Cook Pixel Security

