2021-10-28 16:00:07

by Ivan Vecera

[permalink] [raw]
Subject: [PATCH net v2] net: bridge: fix uninitialized variables when BRIDGE_CFM is disabled

Function br_get_link_af_size_filtered() calls br_cfm_{,peer}_mep_count()
that return a count. When BRIDGE_CFM is not enabled these functions
simply return -EOPNOTSUPP but do not modify count parameter and
calling function then works with uninitialized variables.
Modify these inline functions to return zero in count parameter.

Fixes: b6d0425b816e ("bridge: cfm: Netlink Notifications.")
Cc: Henrik Bjoernlund <[email protected]>
Signed-off-by: Ivan Vecera <[email protected]>
---
net/bridge/br_private.h | 2 ++
1 file changed, 2 insertions(+)

diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h
index 37ca76406f1e..fd5e7e74573c 100644
--- a/net/bridge/br_private.h
+++ b/net/bridge/br_private.h
@@ -1911,11 +1911,13 @@ static inline int br_cfm_status_fill_info(struct sk_buff *skb,

static inline int br_cfm_mep_count(struct net_bridge *br, u32 *count)
{
+ *count = 0;
return -EOPNOTSUPP;
}

static inline int br_cfm_peer_mep_count(struct net_bridge *br, u32 *count)
{
+ *count = 0;
return -EOPNOTSUPP;
}
#endif
--
2.32.0


2021-10-28 16:02:50

by Nikolay Aleksandrov

[permalink] [raw]
Subject: Re: [PATCH net v2] net: bridge: fix uninitialized variables when BRIDGE_CFM is disabled

On 28/10/2021 18:58, Ivan Vecera wrote:
> Function br_get_link_af_size_filtered() calls br_cfm_{,peer}_mep_count()
> that return a count. When BRIDGE_CFM is not enabled these functions
> simply return -EOPNOTSUPP but do not modify count parameter and
> calling function then works with uninitialized variables.
> Modify these inline functions to return zero in count parameter.
>
> Fixes: b6d0425b816e ("bridge: cfm: Netlink Notifications.")
> Cc: Henrik Bjoernlund <[email protected]>
> Signed-off-by: Ivan Vecera <[email protected]>
> ---
> net/bridge/br_private.h | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h
> index 37ca76406f1e..fd5e7e74573c 100644
> --- a/net/bridge/br_private.h
> +++ b/net/bridge/br_private.h
> @@ -1911,11 +1911,13 @@ static inline int br_cfm_status_fill_info(struct sk_buff *skb,
>
> static inline int br_cfm_mep_count(struct net_bridge *br, u32 *count)
> {
> + *count = 0;
> return -EOPNOTSUPP;
> }
>
> static inline int br_cfm_peer_mep_count(struct net_bridge *br, u32 *count)
> {
> + *count = 0;
> return -EOPNOTSUPP;
> }
> #endif
>

Thank you,
Acked-by: Nikolay Aleksandrov <[email protected]>

2021-10-29 12:52:52

by patchwork-bot+netdevbpf

[permalink] [raw]
Subject: Re: [PATCH net v2] net: bridge: fix uninitialized variables when BRIDGE_CFM is disabled

Hello:

This patch was applied to netdev/net.git (master)
by David S. Miller <[email protected]>:

On Thu, 28 Oct 2021 17:58:35 +0200 you wrote:
> Function br_get_link_af_size_filtered() calls br_cfm_{,peer}_mep_count()
> that return a count. When BRIDGE_CFM is not enabled these functions
> simply return -EOPNOTSUPP but do not modify count parameter and
> calling function then works with uninitialized variables.
> Modify these inline functions to return zero in count parameter.
>
> Fixes: b6d0425b816e ("bridge: cfm: Netlink Notifications.")
> Cc: Henrik Bjoernlund <[email protected]>
> Signed-off-by: Ivan Vecera <[email protected]>
>
> [...]

Here is the summary with links:
- [net,v2] net: bridge: fix uninitialized variables when BRIDGE_CFM is disabled
https://git.kernel.org/netdev/net/c/829e050eea69

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