On Tue, Sep 26, 2023 at 2:00 AM Kees Cook <keesc...@chromium.org> wrote:
>
> On Mon, Sep 25, 2023 at 04:31:05AM +0000, Justin Stitt wrote:
> > This code is doing more work than it needs to.
> >
> > Before handing off `val_str` to `kstrtouint()` we are eagerly removing
> > any trailing newline which requires copying `buf`, validating it's
> > length and checking/replacing any potential newlines.
> >
> > kstrtouint() handles this implicitly:
> > kstrtouint ->
> >   kstrotoull -> (documentation)
> > |   /**
> > |    * kstrtoull - convert a string to an unsigned long long
> > |    * @s: The start of the string. The string must be null-terminated, and 
> > may also
> > |    *  include a single newline before its terminating null. The first 
> > character
> > |    ...
> >
> > Let's remove the redundant functionality and let kstrtouint handle it.
> >
> > Link: https://github.com/KSPP/linux/issues/90
> > Cc: linux-hardening@vger.kernel.org
> > Suggested-by: Kees Cook <keesc...@chromium.org>
> > Signed-off-by: Justin Stitt <justinst...@google.com>
>
> This looks much cleaner. Thanks!
>
> Reviewed-by: Kees Cook <keesc...@chromium.org>

Reviewed-by: Chen-Yu Tsai <w...@csie.org>

Reply via email to