2019-08-27 12:22:47

by Denis Efremov (Oracle)

[permalink] [raw]
Subject: [PATCH] modpost: add NOFAIL to strndup

Add NOFAIL check for the strndup call, because the function
allocates memory and can return NULL. All calls to strdup in
modpost are checked with NOFAIL.

Signed-off-by: Denis Efremov <[email protected]>
---
scripts/mod/modpost.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
index f277e116e0eb..0255538528fe 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -795,9 +795,9 @@ static int match(const char *sym, const char * const pat[])

/* "*foo*" */
if (*p == '*' && *endp == '*') {
- char *here, *bare = strndup(p + 1, strlen(p) - 2);
+ char *bare = NOFAIL(strndup(p + 1, strlen(p) - 2));
+ char *here = strstr(sym, bare);

- here = strstr(sym, bare);
free(bare);
if (here != NULL)
return 1;
--
2.21.0


2019-08-28 15:58:59

by Masahiro Yamada

[permalink] [raw]
Subject: Re: [PATCH] modpost: add NOFAIL to strndup

On Tue, Aug 27, 2019 at 9:20 PM Denis Efremov <[email protected]> wrote:
>
> Add NOFAIL check for the strndup call, because the function
> allocates memory and can return NULL. All calls to strdup in
> modpost are checked with NOFAIL.
>
> Signed-off-by: Denis Efremov <[email protected]>
> ---

Applied to linux-kbuild. Thanks.


> scripts/mod/modpost.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
> index f277e116e0eb..0255538528fe 100644
> --- a/scripts/mod/modpost.c
> +++ b/scripts/mod/modpost.c
> @@ -795,9 +795,9 @@ static int match(const char *sym, const char * const pat[])
>
> /* "*foo*" */
> if (*p == '*' && *endp == '*') {
> - char *here, *bare = strndup(p + 1, strlen(p) - 2);
> + char *bare = NOFAIL(strndup(p + 1, strlen(p) - 2));
> + char *here = strstr(sym, bare);
>
> - here = strstr(sym, bare);
> free(bare);
> if (here != NULL)
> return 1;
> --
> 2.21.0
>


--
Best Regards
Masahiro Yamada