Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e317fa50 authored by Eric W. Biederman's avatar Eric W. Biederman Committed by Pablo Neira Ayuso
Browse files

netfilter: Fix memory leak in nf_register_net_hook



In the rare case that when it is a attempted to use a per network device
netfilter hook and the network device does not exist the newly allocated
structure can leak.

Be a good citizen and free the newly allocated structure in the error
handling code.

Fixes: 085db2c0 ("netfilter: Per network namespace netfilter hooks.")
Reported-by: default avatar <kbuild@01.org>
Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
parent 6c7941de
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -96,8 +96,10 @@ int nf_register_net_hook(struct net *net, const struct nf_hook_ops *reg)
	new->priority = reg->priority;

	nf_hook_list = find_nf_hook_list(net, reg);
	if (!nf_hook_list)
	if (!nf_hook_list) {
		kfree(new);
		return -ENOENT;
	}

	mutex_lock(&nf_hook_mutex);
	list_for_each_entry(elem, nf_hook_list, list) {