projects
/
GitHub
/
LineageOS
/
android_kernel_motorola_exynos9610.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
785b31b
)
ipv6: Do cleanup if attribute validation fails in multipath route
author
David Ahern
<dsahern@kernel.org>
Mon, 3 Jan 2022 17:05:55 +0000
(10:05 -0700)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Tue, 11 Jan 2022 12:57:37 +0000
(13:57 +0100)
[ Upstream commit
95bdba23b5b4aa75fe3e6c84335e638641c707bb
]
As Nicolas noted, if gateway validation fails walking the multipath
attribute the code should jump to the cleanup to free previously
allocated memory.
Fixes:
1ff15a710a86
("ipv6: Check attribute length for RTA_GATEWAY when deleting multipath route")
Signed-off-by: David Ahern <dsahern@kernel.org>
Acked-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Link:
https://lore.kernel.org/r/20220103170555.94638-1-dsahern@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/ipv6/route.c
patch
|
blob
|
blame
|
history
diff --git
a/net/ipv6/route.c
b/net/ipv6/route.c
index 008ebda35ed222afdc09cc034925c717fae2f0d0..79b67f8048b5b765c32f2f9bbd64247fee1df82b 100644
(file)
--- a/
net/ipv6/route.c
+++ b/
net/ipv6/route.c
@@
-3236,12
+3236,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;
}