On Fri, 2020-11-20 at 11:26 -0800, Kees Cook wrote: > On Tue, Nov 17, 2020 at 02:07:43PM -0800, Sami Tolvanen wrote: > > On Tue, Nov 17, 2020 at 1:45 PM Kees Cook <keescook@xxxxxxxxxxxx> wrote: > > > On Tue, Nov 17, 2020 at 12:59:02PM -0800, Sami Tolvanen wrote: > > > > Instead of casting callback functions to type iw_handler, which trips > > > > indirect call checking with Clang's Control-Flow Integrity (CFI), add > > > > stub functions with the correct function type for the callbacks. > > > > > > Oh, wow. iw_handler with union iwreq_data look like really nasty hacks. > > > Aren't those just totally bypassing type checking? Where do the > > > callbacks actually happen? I couldn't find them... > > > > The callbacks to these happen in ioctl_standard_call in wext-core.c. > > Thanks! If this is all the 'old compat' code, this patch looks fine. I > think new stuff should probably encode types in some fashion (rather > than via wrappers). Everything mentioning wext has been deprecated for something like 15 years ... so yeah. But people still use it :( johannes