diff options
author | Jacob Garber <jgarber1@ualberta.ca> | 2019-05-10 21:28:52 +0200 |
---|---|---|
committer | Masahiro Yamada <yamada.masahiro@socionext.com> | 2019-05-14 16:23:25 +0200 |
commit | b9d1a8e9302e68ee03571a286aadeb8041e0b2ca (patch) | |
tree | 372b2d2bee6137d794110d7ff7e106b086dfbe99 /scripts/kconfig/lexer.l | |
parent | kconfig: remove useless NULL pointer check in conf_write_dep() (diff) | |
download | linux-b9d1a8e9302e68ee03571a286aadeb8041e0b2ca.tar.xz linux-b9d1a8e9302e68ee03571a286aadeb8041e0b2ca.zip |
kconfig: use snprintf for formatting pathnames
Valid pathnames will never exceed PATH_MAX, but these file names
are unsanitized and can cause buffer overflow if set incorrectly.
Use snprintf to avoid this. This was flagged during a Coverity scan
of the coreboot project, which also uses kconfig for its build system.
Signed-off-by: Jacob Garber <jgarber1@ualberta.ca>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Diffstat (limited to 'scripts/kconfig/lexer.l')
-rw-r--r-- | scripts/kconfig/lexer.l | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/scripts/kconfig/lexer.l b/scripts/kconfig/lexer.l index c9df1c8b9824..6354c905b006 100644 --- a/scripts/kconfig/lexer.l +++ b/scripts/kconfig/lexer.l @@ -378,7 +378,8 @@ FILE *zconf_fopen(const char *name) if (!f && name != NULL && name[0] != '/') { env = getenv(SRCTREE); if (env) { - sprintf(fullname, "%s/%s", env, name); + snprintf(fullname, sizeof(fullname), + "%s/%s", env, name); f = fopen(fullname, "r"); } } |