Re: [PATCH v2] scripts: modpost: check memory allocation results

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2018-08-16 4:30 GMT+09:00 Randy Dunlap <rdunlap@xxxxxxxxxxxxx>:
> From: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
>
> Fix missing error check for memory allocation functions in
> scripts/mod/modpost.c.
>
> Fixes kernel bugzilla #200319:
> https://bugzilla.kernel.org/show_bug.cgi?id=200319
>
> Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
> Cc: Yuexing Wang <wangyxlandq@xxxxxxxxx>
> Cc: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
> ---
> v2: add checks in more places

Applied to linux-kbuild. Thanks!


>  scripts/mod/modpost.c |    8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> --- 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;
> @@ -1318,7 +1318,7 @@ static Elf_Sym *find_elf_symbol2(struct
>  static char *sec2annotation(const char *s)
>  {
>         if (match(s, init_exit_sections)) {
> -               char *p = malloc(20);
> +               char *p = NOFAIL(malloc(20));
>                 char *r = p;
>
>                 *p++ = '_';
> @@ -1338,7 +1338,7 @@ static char *sec2annotation(const char *
>                         strcat(p, " ");
>                 return r;
>         } else {
> -               return strdup("");
> +               return NOFAIL(strdup(""));
>         }
>  }
>
> @@ -2036,7 +2036,7 @@ void buf_write(struct buffer *buf, const
>  {
>         if (buf->size - buf->pos < len) {
>                 buf->size += len + SZ;
> -               buf->p = realloc(buf->p, buf->size);
> +               buf->p = NOFAIL(realloc(buf->p, buf->size));
>         }
>         strncpy(buf->p + buf->pos, s, len);
>         buf->pos += len;
>
>



-- 
Best Regards
Masahiro Yamada



[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux