diff mbox series

[net] ipv6: Do cleanup if attribute validation fails in multipath route

Message ID 20220103170555.94638-1-dsahern@kernel.org (mailing list archive)
State Accepted
Commit 95bdba23b5b4aa75fe3e6c84335e638641c707bb
Delegated to: Netdev Maintainers
Headers show
Series [net] ipv6: Do cleanup if attribute validation fails in multipath route | expand

Checks

Context Check Description
netdev/tree_selection success Clearly marked for net
netdev/fixes_present success Fixes tag present in non-next series
netdev/subject_prefix success Link
netdev/cover_letter success Single patches do not need cover letters
netdev/patch_count success Link
netdev/header_inline success No static functions without inline keyword in header files
netdev/build_32bit success Errors and warnings before: 1 this patch: 1
netdev/cc_maintainers warning 3 maintainers not CCed: yoshfuji@linux-ipv6.org davem@davemloft.net kuba@kernel.org
netdev/build_clang success Errors and warnings before: 0 this patch: 0
netdev/module_param success Was 0 now: 0
netdev/verify_signedoff success Signed-off-by tag matches author and committer
netdev/verify_fixes fail Problems with Fixes tag: 1
netdev/build_allmodconfig_warn success Errors and warnings before: 1 this patch: 1
netdev/checkpatch warning WARNING: Unknown commit id '23fb261977fd', maybe rebased or not pulled?
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/source_inline success Was 0 now: 0

Commit Message

David Ahern Jan. 3, 2022, 5:05 p.m. UTC
As Nicolas noted, if gateway validation fails walking the multipath
attribute the code should jump to the cleanup to free previously
allocated memory.

Fixes: 23fb261977fd ("ipv6: Check attribute length for RTA_GATEWAY in multipath route")
Signed-off-by: David Ahern <dsahern@kernel.org>
Cc: Nicolas Dichtel <nicolas.dichtel@6wind.com>
---
 net/ipv6/route.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

Comments

Nicolas Dichtel Jan. 3, 2022, 5:29 p.m. UTC | #1
Le 03/01/2022 à 18:05, David Ahern a écrit :
> As Nicolas noted, if gateway validation fails walking the multipath
> attribute the code should jump to the cleanup to free previously
> allocated memory.
> 
> Fixes: 23fb261977fd ("ipv6: Check attribute length for RTA_GATEWAY in multipath route")
> Signed-off-by: David Ahern <dsahern@kernel.org>
> Cc: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Acked-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
patchwork-bot+netdevbpf@kernel.org Jan. 3, 2022, 6:10 p.m. UTC | #2
Hello:

This patch was applied to netdev/net.git (master)
by Jakub Kicinski <kuba@kernel.org>:

On Mon,  3 Jan 2022 10:05:55 -0700 you wrote:
> As Nicolas noted, if gateway validation fails walking the multipath
> attribute the code should jump to the cleanup to free previously
> allocated memory.
> 
> Fixes: 23fb261977fd ("ipv6: Check attribute length for RTA_GATEWAY in multipath route")
> Signed-off-by: David Ahern <dsahern@kernel.org>
> Cc: Nicolas Dichtel <nicolas.dichtel@6wind.com>
> 
> [...]

Here is the summary with links:
  - [net] ipv6: Do cleanup if attribute validation fails in multipath route
    https://git.kernel.org/netdev/net/c/95bdba23b5b4

You are awesome, thank you!
diff mbox series

Patch

diff --git a/net/ipv6/route.c b/net/ipv6/route.c
index d2ff8a7e1709..3f36f9603f00 100644
--- a/net/ipv6/route.c
+++ b/net/ipv6/route.c
@@ -5277,12 +5277,10 @@  static int ip6_route_multipath_add(struct fib6_config *cfg,
 
 			nla = nla_find(attrs, attrlen, RTA_GATEWAY);
 			if (nla) {
-				int ret;
-
-				ret = fib6_gw_from_attr(&r_cfg.fc_gateway, nla,
+				err = fib6_gw_from_attr(&r_cfg.fc_gateway, nla,
 							extack);
-				if (ret)
-					return ret;
+				if (err)
+					goto cleanup;
 
 				r_cfg.fc_flags |= RTF_GATEWAY;
 			}