]> www.infradead.org Git - users/willy/pagecache.git/commitdiff
kconfig: fix possible buffer overflow
authorKonstantin Meskhidze <konstantin.meskhidze@huawei.com>
Tue, 5 Sep 2023 09:59:14 +0000 (17:59 +0800)
committerMasahiro Yamada <masahiroy@kernel.org>
Tue, 5 Sep 2023 17:00:02 +0000 (02:00 +0900)
Buffer 'new_argv' is accessed without bound check after accessing with
bound check via 'new_argc' index.

Fixes: e298f3b49def ("kconfig: add built-in function support")
Co-developed-by: Ivanov Mikhail <ivanov.mikhail1@huawei-partners.com>
Signed-off-by: Konstantin Meskhidze <konstantin.meskhidze@huawei.com>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
scripts/kconfig/preprocess.c

index 748da578b418c4acb53f454e17e2370d2050ceb6..d1f5bcff4b62d68d83e6134b0c883876619f07a2 100644 (file)
@@ -396,6 +396,9 @@ static char *eval_clause(const char *str, size_t len, int argc, char *argv[])
 
                p++;
        }
+
+       if (new_argc >= FUNCTION_MAX_ARGS)
+               pperror("too many function arguments");
        new_argv[new_argc++] = prev;
 
        /*