]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
kconfig: require a space after '#' for valid input
authorMasahiro Yamada <masahiroy@kernel.org>
Sat, 18 Nov 2023 07:59:07 +0000 (16:59 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 13 Mar 2025 11:50:13 +0000 (12:50 +0100)
commit131f1604fa6b1631ececf10f7cfb9cc42907f2c6
tree5846888585a3f55aef7e88777b5e18d9f6361cd1
parent6bdf078908c3113315ec85ec2f30698aac86c4b8
kconfig: require a space after '#' for valid input

[ Upstream commit 4d137ab0107ead0f2590fc0314e627431e3b9e3f ]

Currently, when an input line starts with '#', (line + 2) is passed to
memcmp() without checking line[1].

It means that line[1] can be any arbitrary character. For example,
"#KCONFIG_FOO is not set" is accepted as valid input, functioning the
same as "# CONFIG_FOO is not set".

More importantly, this can potentially lead to a buffer overrun if
line[1] == '\0'. It occurs if the input only contains '#', as
(line + 2) points to an uninitialized buffer.

Check line[1], and skip the line if it is not a space.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Stable-dep-of: a409fc1463d6 ("kconfig: fix memory leak in sym_warn_unmet_dep()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
scripts/kconfig/confdata.c