netfilter: nf_nat: Fix memleak in nf_nat_init
authorDinghao Liu <dinghao.liu@zju.edu.cn>
Sat, 9 Jan 2021 12:01:21 +0000 (20:01 +0800)
committerPablo Neira Ayuso <pablo@netfilter.org>
Sun, 10 Jan 2021 23:34:11 +0000 (00:34 +0100)
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 <dinghao.liu@zju.edu.cn>
Acked-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/netfilter/nf_nat_core.c

index ea923f8..b7c3c90 100644 (file)
@@ -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;
        }