2020-11-12 09:28:45

by Wenlin Kang

[permalink] [raw]
Subject: [PATCH] tipc: fix -Wstringop-truncation warnings

From: Wenlin Kang <[email protected]>

Replace strncpy() with strscpy(), fixes the following warning:

In function 'bearer_name_validate',
inlined from 'tipc_enable_bearer' at net/tipc/bearer.c:246:7:
net/tipc/bearer.c:141:2: warning: 'strncpy' specified bound 32 equals destination size [-Wstringop-truncation]
strncpy(name_copy, name, TIPC_MAX_BEARER_NAME);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Wenlin Kang <[email protected]>
---
net/tipc/bearer.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/net/tipc/bearer.c b/net/tipc/bearer.c
index 650414110452..2241d5a38f7b 100644
--- a/net/tipc/bearer.c
+++ b/net/tipc/bearer.c
@@ -139,10 +139,7 @@ static int bearer_name_validate(const char *name,
u32 if_len;

/* copy bearer name & ensure length is OK */
- name_copy[TIPC_MAX_BEARER_NAME - 1] = 0;
- /* need above in case non-Posix strncpy() doesn't pad with nulls */
- strncpy(name_copy, name, TIPC_MAX_BEARER_NAME);
- if (name_copy[TIPC_MAX_BEARER_NAME - 1] != 0)
+ if (strscpy(name_copy, name, TIPC_MAX_BEARER_NAME) < 0)
return 0;

/* ensure all component parts of bearer name are present */
--
2.17.1


2020-11-13 12:30:37

by Ying Xue

[permalink] [raw]
Subject: Re: [PATCH] tipc: fix -Wstringop-truncation warnings

On 11/12/20 5:34 PM, Kang Wenlin wrote:
> From: Wenlin Kang <[email protected]>
>
> Replace strncpy() with strscpy(), fixes the following warning:
>
> In function 'bearer_name_validate',
> inlined from 'tipc_enable_bearer' at net/tipc/bearer.c:246:7:
> net/tipc/bearer.c:141:2: warning: 'strncpy' specified bound 32 equals destination size [-Wstringop-truncation]
> strncpy(name_copy, name, TIPC_MAX_BEARER_NAME);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Signed-off-by: Wenlin Kang <[email protected]>

Acked-by: Ying Xue <[email protected]>

> ---
> net/tipc/bearer.c | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/net/tipc/bearer.c b/net/tipc/bearer.c
> index 650414110452..2241d5a38f7b 100644
> --- a/net/tipc/bearer.c
> +++ b/net/tipc/bearer.c
> @@ -139,10 +139,7 @@ static int bearer_name_validate(const char *name,
> u32 if_len;
>
> /* copy bearer name & ensure length is OK */
> - name_copy[TIPC_MAX_BEARER_NAME - 1] = 0;
> - /* need above in case non-Posix strncpy() doesn't pad with nulls */
> - strncpy(name_copy, name, TIPC_MAX_BEARER_NAME);
> - if (name_copy[TIPC_MAX_BEARER_NAME - 1] != 0)
> + if (strscpy(name_copy, name, TIPC_MAX_BEARER_NAME) < 0)
> return 0;
>
> /* ensure all component parts of bearer name are present */
>

2020-11-13 22:31:47

by patchwork-bot+netdevbpf

[permalink] [raw]
Subject: Re: [PATCH] tipc: fix -Wstringop-truncation warnings

Hello:

This patch was applied to netdev/net-next.git (refs/heads/master):

On Thu, 12 Nov 2020 17:34:42 +0800 you wrote:
> From: Wenlin Kang <[email protected]>
>
> Replace strncpy() with strscpy(), fixes the following warning:
>
> In function 'bearer_name_validate',
> inlined from 'tipc_enable_bearer' at net/tipc/bearer.c:246:7:
> net/tipc/bearer.c:141:2: warning: 'strncpy' specified bound 32 equals destination size [-Wstringop-truncation]
> strncpy(name_copy, name, TIPC_MAX_BEARER_NAME);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> [...]

Here is the summary with links:
- tipc: fix -Wstringop-truncation warnings
https://git.kernel.org/netdev/net-next/c/2f51e5758d61

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html