diff options
author | Jesper Juhl <jesper.juhl@gmail.com> | 2007-10-15 01:39:12 -0700 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-10-15 12:26:32 -0700 |
commit | f937f1f46b6d2f9bef94e0d6b769a4c67615d34e (patch) | |
tree | 4aadb89d07e7bb0789d5a754e65db686f339f07c /net/netlink | |
parent | 1dff92e09eb3adfcf3d3dffd0507b850f911f280 (diff) | |
download | linux-f937f1f46b6d2f9bef94e0d6b769a4c67615d34e.tar.gz linux-f937f1f46b6d2f9bef94e0d6b769a4c67615d34e.tar.bz2 linux-f937f1f46b6d2f9bef94e0d6b769a4c67615d34e.zip |
[NETLINK]: Don't leak 'listeners' in netlink_kernel_create()
The Coverity checker spotted that we'll leak the storage allocated
to 'listeners' in netlink_kernel_create() when the
if (!nl_table[unit].registered)
check is false.
This patch avoids the leak.
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/netlink')
-rw-r--r-- | net/netlink/af_netlink.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c index c776bcd9f825..98e313e5e594 100644 --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c @@ -1378,6 +1378,8 @@ netlink_kernel_create(struct net *net, int unit, unsigned int groups, nl_table[unit].cb_mutex = cb_mutex; nl_table[unit].module = module; nl_table[unit].registered = 1; + } else { + kfree(listeners); } netlink_table_ungrab(); |