[Buildroot] [PATCH 1/1] support/kconfig: fix compiler warnings
Edgar Bonet
bonet at grenoble.cnrs.fr
Wed Sep 22 14:08:58 UTC 2021
Compiling on Ubuntu 20.04 generates this:
./util.c: In function ‘file_write_dep’
./util.c:54:18: warning: ‘..config.tmp’ directive writing 12 bytes into a region of size between 1 and 4097 [-Wformat-overflow=]
54 | sprintf(buf, "%s..config.tmp", dir);
| ^~~~~~~~~~~~
./util.c:54:2: note: ‘sprintf’ output between 13 and 4109 bytes into a destination of size 4097
54 | sprintf(buf, "%s..config.tmp", dir);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
and similar warnings on confdata.c, lines 778, 989, 995, 1000, 1007,
1040, 1046 and 1054. Avoid the warnings by enlarging the destination
buffer of fprintf().
Signed-off-by: Edgar Bonet <bonet at grenoble.cnrs.fr>
---
support/kconfig/confdata.c | 4 ++--
support/kconfig/util.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/support/kconfig/confdata.c b/support/kconfig/confdata.c
index 892da74fdc..9ab980edd8 100644
--- a/support/kconfig/confdata.c
+++ b/support/kconfig/confdata.c
@@ -744,7 +744,7 @@ int conf_write(const char *name)
struct menu *menu;
const char *basename;
const char *str;
- char dirname[PATH_MAX+1], tmpname[PATH_MAX+1], newname[PATH_MAX+1];
+ char dirname[PATH_MAX+1], tmpname[PATH_MAX+20], newname[PATH_MAX+1];
char *env;
if (!name)
@@ -974,7 +974,7 @@ int conf_write_autoconf(void)
const char *name;
FILE *out, *tristate, *out_h;
int i;
- char dir[PATH_MAX+1], buf[PATH_MAX+1];
+ char dir[PATH_MAX+1], buf[PATH_MAX+20];
char *s;
strcpy(dir, conf_get_configname());
diff --git a/support/kconfig/util.c b/support/kconfig/util.c
index 18a8e52391..8665f5bb89 100644
--- a/support/kconfig/util.c
+++ b/support/kconfig/util.c
@@ -35,7 +35,7 @@ struct file *file_lookup(const char *name)
int file_write_dep(const char *name)
{
char *str;
- char buf[PATH_MAX+1], buf2[PATH_MAX+1], dir[PATH_MAX+1];
+ char buf[PATH_MAX+20], buf2[PATH_MAX+1], dir[PATH_MAX+1];
struct symbol *sym, *env_sym;
struct expr *e;
struct file *file;
--
2.25.1
More information about the buildroot
mailing list