On Fri, Feb 10, 2017 at 4:36 PM, Luis R. Rodriguez <mcgrof@xxxxxxxxxx> wrote: > Commit 7c60c48f58a7 ("sysctl: Improve the sysctl sanity checks") > improved sanity checks considerbly, however the enhancements on > sysctl_check_table() meant adding a functional change so that > only the last table entry's sanity error is propagated. It also > changed the way errors were propagated so that each new check > reset the err value, this means only last sanity check computed > is used for an error. This has been in the kernel since v3.4 days. > > Fix this by carrying on errors from previous checks and iterations > as we traverse the table and ensuring we keep any error from previous > checks. We keep iterating on the table even if an error is found so > we can complain for all errors found in one shot. This works as > -EINVAL is always returned on error anyway, and the check for error > is any non-zero value. I assume this didn't catch anything that was broken-but-hidden in the kernel? > > Fixes: 7c60c48f58a7 ("sysctl: Improve the sysctl sanity checks") > Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxxxx> Acked-by: Kees Cook <keescook@xxxxxxxxxxxx> -Kees -- Kees Cook Pixel Security -- To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html