2021-01-09 12:03:53

by Dinghao Liu

[permalink] [raw]
Subject: [PATCH] netfilter: Fix memleak in nf_nat_init

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 <[email protected]>
---
net/netfilter/nf_nat_core.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/net/netfilter/nf_nat_core.c b/net/netfilter/nf_nat_core.c
index ea923f8cf9c4..b7c3c902290f 100644
--- a/net/netfilter/nf_nat_core.c
+++ b/net/netfilter/nf_nat_core.c
@@ -1174,6 +1174,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;
}

--
2.17.1


2021-01-09 12:15:56

by Florian Westphal

[permalink] [raw]
Subject: Re: [PATCH] netfilter: Fix memleak in nf_nat_init

Dinghao Liu <[email protected]> wrote:
> When register_pernet_subsys() fails, nf_nat_bysource
> should be freed just like when nf_ct_extend_register()
> fails.

Acked-by: Florian Westphal <[email protected]>

2021-01-10 08:43:32

by Pablo Neira Ayuso

[permalink] [raw]
Subject: Re: [PATCH] netfilter: Fix memleak in nf_nat_init

On Sat, Jan 09, 2021 at 08:01:21PM +0800, Dinghao Liu wrote:
> When register_pernet_subsys() fails, nf_nat_bysource
> should be freed just like when nf_ct_extend_register()
> fails.

Applied, thanks.