]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
netlink: ensure to loop over all netns in genlmsg_multicast_allns()
authorNicolas Dichtel <nicolas.dichtel@6wind.com>
Tue, 6 Feb 2018 13:48:32 +0000 (14:48 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 11 Mar 2018 15:12:18 +0000 (16:12 +0100)
commit1006f0b7322509c8d7f9e78f03d41e877035a82d
tree32a786848b2c0a6c05d5836c486c03dc68a89958
parentb3cb96f05984d8431ed0ab31a3f538a8e5e9e896
netlink: ensure to loop over all netns in genlmsg_multicast_allns()

[ Upstream commit cb9f7a9a5c96a773bbc9c70660dc600cfff82f82 ]

Nowadays, nlmsg_multicast() returns only 0 or -ESRCH but this was not the
case when commit 134e63756d5f was pushed.
However, there was no reason to stop the loop if a netns does not have
listeners.
Returns -ESRCH only if there was no listeners in all netns.

To avoid having the same problem in the future, I didn't take the
assumption that nlmsg_multicast() returns only 0 or -ESRCH.

Fixes: 134e63756d5f ("genetlink: make netns aware")
CC: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/netlink/genetlink.c