cfg80211: allow vendor dumpit to terminate by returning 0
authorJulian Squires <julian@cipht.net>
Mon, 20 Jul 2020 14:50:35 +0000 (12:20 -0230)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 31 Jul 2020 07:24:22 +0000 (09:24 +0200)
commit9c167b2ddc1a89e6f6378e65bfd20e8c0ddf65f1
tree72096788c66cd02979fcc17c6d031ced960c9de4
parentf2a0c18759072dbd5135f72a8035f6fb838df425
cfg80211: allow vendor dumpit to terminate by returning 0

nl80211 vendor netlink dumpit, like netlink_callback->dump, should
signal successful completion by returning 0.

Currently, that will just cause dumpit to be called again, possibly
many times until an error occurs.  Since skb->len is never going to be
0 by the time dumpit is called, the only way for dumpit to signal
completion is by returning an error.  If it returns a positive value,
the current message is cancelled, but that positive value is returned
and nl80211_vendor_cmd_dump gets called again.

Fix that by passing a return value of 0 through.

Signed-off-by: Julian Squires <julian@cipht.net>
Link: https://lore.kernel.org/r/20200720145033.401307-1-julian@cipht.net
[reword commit message]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/wireless/nl80211.c