diff options
author | Sven Eckelmann <sven.eckelmann@openmesh.com> | 2018-02-19 14:08:53 +0100 |
---|---|---|
committer | Simon Wunderlich <sw@simonwunderlich.de> | 2018-02-25 20:11:11 +0100 |
commit | 011c935fceae5252619ef730baa610c655281dda (patch) | |
tree | ae02734ad65de9e9574345688fd4bdff9547d9fe | |
parent | 10d570284258a30dc104c50787c5289ec49f3d23 (diff) | |
download | linux-stable-011c935fceae5252619ef730baa610c655281dda.tar.gz linux-stable-011c935fceae5252619ef730baa610c655281dda.tar.bz2 linux-stable-011c935fceae5252619ef730baa610c655281dda.zip |
batman-adv: Ignore invalid batadv_v_gw during netlink send
The function batadv_v_gw_dump stops the processing loop when
batadv_v_gw_dump_entry returns a non-0 return code. This should only
happen when the buffer is full. Otherwise, an empty message may be
returned by batadv_gw_dump. This empty message will then stop the netlink
dumping of gateway entries. At worst, not a single entry is returned to
userspace even when plenty of possible gateways exist.
Fixes: b71bb6f924fe ("batman-adv: add B.A.T.M.A.N. V bat_gw_dump implementations")
Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
-rw-r--r-- | net/batman-adv/bat_v.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/batman-adv/bat_v.c b/net/batman-adv/bat_v.c index 27e165ac9302..c74f81341dab 100644 --- a/net/batman-adv/bat_v.c +++ b/net/batman-adv/bat_v.c @@ -928,7 +928,7 @@ static int batadv_v_gw_dump_entry(struct sk_buff *msg, u32 portid, u32 seq, struct batadv_neigh_ifinfo *router_ifinfo = NULL; struct batadv_neigh_node *router; struct batadv_gw_node *curr_gw; - int ret = -EINVAL; + int ret = 0; void *hdr; router = batadv_orig_router_get(gw_node->orig_node, BATADV_IF_DEFAULT); |