From: Dinghao Liu Date: Sat, 9 Jan 2021 12:01:21 +0000 (+0800) Subject: netfilter: nf_nat: Fix memleak in nf_nat_init X-Git-Tag: v4.19.169~2 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=1921060a11b30dedfa8732c83de382788811bb83;p=users%2Fdwmw2%2Flinux.git netfilter: nf_nat: Fix memleak in nf_nat_init commit 869f4fdaf4ca7bb6e0d05caf6fa1108dddc346a7 upstream. When register_pernet_subsys() fails, nf_nat_bysource should be freed just like when nf_ct_extend_register() fails. Fixes: 1cd472bf036ca ("netfilter: nf_nat: add nat hook register functions to nf_nat") Signed-off-by: Dinghao Liu Acked-by: Florian Westphal Signed-off-by: Pablo Neira Ayuso Signed-off-by: Greg Kroah-Hartman --- diff --git a/net/netfilter/nf_nat_core.c b/net/netfilter/nf_nat_core.c index 2268b10a9dcf8..c31df6a76504d 100644 --- a/net/netfilter/nf_nat_core.c +++ b/net/netfilter/nf_nat_core.c @@ -1068,6 +1068,7 @@ static int __init nf_nat_init(void) ret = register_pernet_subsys(&nat_net_ops); if (ret < 0) { nf_ct_extend_unregister(&nat_extend); + kvfree(nf_nat_bysource); return ret; }