|
Message-ID: <CAGXu5j+_mPypESS8EXFzHnZxcFX2OkGbxrHT2KN-FM_8TpAr9g@mail.gmail.com> Date: Tue, 1 Mar 2016 13:54:50 -0800 From: Kees Cook <keescook@...omium.org> To: "kernel-hardening@...ts.openwall.com" <kernel-hardening@...ts.openwall.com> Cc: Rasmus Villemoes <linux@...musvillemoes.dk> Subject: Re: [RFC 0/2] format_template attribute On Mon, Feb 22, 2016 at 11:31 AM, Kees Cook <keescook@...omium.org> wrote: > On Thu, Feb 18, 2016 at 3:24 PM, Rasmus Villemoes > <linux@...musvillemoes.dk> wrote: >> I've been sitting on this for a while and would like to get some >> comments; apologies if this is inappropriate for this list. It's also >> a lot of code for not finding any bugs in the current kernel, but I >> guess that's good thing. It's on top of Emese's v2 infrastructure. It >> probably won't build with all gccs; it works for me with gcc 4.9. > > Awesome! The existing checks in gcc are far from sufficient. :) FWIW, it's possible to test these in my gcc-plugins tree now. If I add a bogus format string, I get failures, as expected: kernel/watchdog.c:692:1: error: specifier 1 in 'watchdog/%d' ('%d') incompatible with format template 'foobar/%u' }; It'd be nice if gcc's "error" included the gcc plugin. Maybe we should add something like this to gcc-common.h: #define plug_error(fmt, args...) error("%s plugin: " fmt, __FILE__, args) -Kees > >> >> Rasmus Villemoes (2): >> plugins: implement format_template attribute >> compiler.h: add __format_template >> >> arch/Kconfig | 18 ++ >> drivers/hwmon/applesmc.c | 2 +- >> drivers/staging/speakup/spk_types.h | 2 +- >> include/linux/compiler.h | 7 + >> include/linux/smpboot.h | 2 +- >> include/linux/usb.h | 2 +- >> scripts/Makefile.gcc-plugins | 4 + >> tools/gcc/Makefile | 2 + >> tools/gcc/format_template.c | 331 ++++++++++++++++++++++++++++++++++++ >> 9 files changed, 366 insertions(+), 4 deletions(-) >> create mode 100644 tools/gcc/format_template.c >> >> -- >> 2.1.4 >> > > I wonder if we need something in Documention to explain this, along > with our existing __printf markings? > > -Kees > > -- > Kees Cook > Chrome OS & Brillo Security -- Kees Cook Chrome OS & Brillo Security
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.