Message ID | adc5b6e4-28c1-7fe2-b7b1-c6b1cd39f8ed@infradead.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | modpost: check strdup() return value | expand |
2018-08-15 5:50 GMT+09:00 Randy Dunlap <rdunlap@infradead.org>: > From: Randy Dunlap <rdunlap@infradead.org> > > Fix missing error check for function strdup() in scripts/mod/modpost.c. > > Fixes kernel bugzilla #200319: > https://bugzilla.kernel.org/show_bug.cgi?id=200319 > > Signed-off-by: Randy Dunlap <rdunlap@infradead.org> > Cc: Yuexing Wang <wangyxlandq@gmail.com> > Cc: Masahiro Yamada <yamada.masahiro@socionext.com> > --- > scripts/mod/modpost.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > --- linux-next-20180814.orig/scripts/mod/modpost.c > +++ linux-next-20180814/scripts/mod/modpost.c > @@ -672,7 +672,7 @@ static void handle_modversions(struct mo > if (ELF_ST_TYPE(sym->st_info) == STT_SPARC_REGISTER) > break; > if (symname[0] == '.') { > - char *munged = strdup(symname); > + char *munged = NOFAIL(strdup(symname)); > munged[0] = '_'; > munged[1] = toupper(munged[1]); > symname = munged; > > While you are here, will you fix a little more? line 1321: char *p = malloc(20); line 1341: return strdup(""); line 2039: buf->p = realloc(buf->p, buf->size);
--- linux-next-20180814.orig/scripts/mod/modpost.c +++ linux-next-20180814/scripts/mod/modpost.c @@ -672,7 +672,7 @@ static void handle_modversions(struct mo if (ELF_ST_TYPE(sym->st_info) == STT_SPARC_REGISTER) break; if (symname[0] == '.') { - char *munged = strdup(symname); + char *munged = NOFAIL(strdup(symname)); munged[0] = '_'; munged[1] = toupper(munged[1]); symname = munged;