Re: [PATCH] kstrtox: make kstrtobool_from_user() very strict

From: Alexey Dobriyan
Date: Tue Feb 13 2018 - 12:11:24 EST


On Tue, Feb 13, 2018 at 06:02:27PM +0200, Andy Shevchenko wrote:
> On Sat, Feb 10, 2018 at 11:11 PM, Alexey Dobriyan <adobriyan@xxxxxxxxx> wrote:
> > Once upon a time module parameter parsing code accepted
> > 0, 1, y, n, Y and N for boolean values. Gratituous but contained
> > to module code and thus tolerable.
> >
> > Commit ef951599074ba4fad2d0efa0a977129b41e6d203
> > ("lib: move strtobool() to kstrtobool()") promoted that ugly wart
> > to kstrtobool() and, more importantly, kstrtobool_from_user().
> >
> > Later set of accepted values was expanded to "on" and "of".
> > Now there are 6+8=14(!) valid strings for a boolean.
> >
> > This patch reduces set of accepted values to "0" and "1"
> > (with optional newline) in spirit with other kstrto*() functions.
> >
> > I'm starting with kstrtobool_from_user() as it is explicitly designed
> > to be used for interacting with userspace. Currently there are 9 users
> > all debug code, so there is hope.
> >
> > Please send before 4.16 so no real users start to depend on verbose behaviour.
> >
>
> NACK.
> You basically are breaking ABI here. I don't see a zillion patches
> which adds a tons of duplicate code to the corresponding users.

Please do "find . -type f -name '*.[ch]' | xargs grep kstrtobool_from_user -w'
before talking about zillion of patches.