Messages in this thread | | | Date | Wed, 9 Dec 2009 23:59:03 +0800 | From | Américo Wang <> | Subject | Re: [PATCH] modpost: fix asprintf warnings |
| |
On Wed, Dec 09, 2009 at 07:02:23AM -0500, Mike Frysinger wrote: >On compilers with security warnings enabled by default, we get: > >scripts/mod/modpost.c: In function 'get_markers': >scripts/mod/modpost.c:1562: warning: ignoring return value of 'asprintf', > declared with attribute warn_unused_result >scripts/mod/modpost.c: In function 'add_marker': >scripts/mod/modpost.c:1982: warning: ignoring return value of 'asprintf', > declared with attribute warn_unused_result > >So check the return value and abort on errors. > >Signed-off-by: Mike Frysinger <vapier@gentoo.org> >--- > scripts/mod/modpost.c | 6 ++++-- > 1 files changed, 4 insertions(+), 2 deletions(-) > >diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c >index 801a16a..c4df538 100644 >--- a/scripts/mod/modpost.c >+++ b/scripts/mod/modpost.c >@@ -1559,7 +1559,8 @@ static void get_markers(struct elf_info *info, struct module *mod) > const char *name = strings + sym->st_value; > const char *fmt = strchr(name, '\0') + 1; > char *line = NULL; >- asprintf(&line, "%s\t%s\t%s\n", name, mod->name, fmt); >+ if (asprintf(&line, "%s\t%s\t%s\n", name, mod->name, fmt) == -1) >+ fatal("asprintf() with %s failed", name);
A '\n' is needed.
> NOFAIL(line); > mod->markers[n++] = line; > } >@@ -1979,7 +1980,8 @@ static void write_dump(const char *fname) > static void add_marker(struct module *mod, const char *name, const char *fmt) > { > char *line = NULL; >- asprintf(&line, "%s\t%s\t%s\n", name, mod->name, fmt); >+ if (asprintf(&line, "%s\t%s\t%s\n", name, mod->name, fmt) == -1) >+ fatal("asprintf() with %s failed", name); > NOFAIL(line); > > mod->markers = NOFAIL(realloc(mod->markers, ((mod->nmarkers + 1) * >-- >1.6.5.5 > >-- >To unsubscribe from this list: send the line "unsubscribe linux-kernel" in >the body of a message to majordomo@vger.kernel.org >More majordomo info at http://vger.kernel.org/majordomo-info.html >Please read the FAQ at http://www.tux.org/lkml/
-- Live like a child, think like the god.
| |