[PATCH batadv v2] batman-adv: remove negative returns for batadv_send_skb_unicast
Sven Eckelmann <[email protected]> Thu, 30 Jul 2026 08:23:28 +0200
| Newsgroups | org.open-mesh.lists.batman |
|---|---|
| Message-ID | <20260730-ucast-send-restrict-return-v2-1-0a40eca7803d@narfation.org> |
The kernel documentation for batadv_send_skb_unicast() states that only the
return values NET_XMIT_DROP and NET_XMIT_SUCCESS are valid. Functions like
batadv_dat_snoop_incoming_arp_request() are only checking if the return is
not NET_XMIT_DROP to check if send was successful or not. Negative values
were therefore also handled as success.
Similar functions are not returning the batadv_send_skb_to_orig() return
value directly but are checking if it is a direct success and only then
marking the return as such. This must also be adopted for
batadv_send_skb_unicast().
Fixes: 83fef820ecdb ("batman-adv: Consume skb in receive handlers")
Signed-off-by: Sven Eckelmann <[email protected]>
---
Changes in v2:
- fix NET_RX_SUCCESS-NET_XMIT_SUCCESS confusion in code (not actual
behavior change)
- Link to v1: https://patch.msgid.link/20260729-ucast-send-restrict-return-v1-1-07cf6d2ec5f5@narfation.org
---
net/batman-adv/send.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/net/batman-adv/send.c b/net/batman-adv/send.c
index 2122560c..929b6dd3 100644
--- a/net/batman-adv/send.c
+++ b/net/batman-adv/send.c
@@ -324,6 +324,7 @@ int batadv_send_skb_unicast(struct batadv_priv *bat_priv,
struct batadv_unicast_packet *unicast_packet;
int ret = NET_XMIT_DROP;
struct ethhdr *ethhdr;
+ int res;
if (!orig_node)
goto out;
@@ -360,7 +361,10 @@ int batadv_send_skb_unicast(struct batadv_priv *bat_priv,
if (batadv_tt_global_client_is_roaming(bat_priv, ethhdr->h_dest, vid))
unicast_packet->ttvn = unicast_packet->ttvn - 1;
- ret = batadv_send_skb_to_orig(skb, orig_node, NULL);
+ res = batadv_send_skb_to_orig(skb, orig_node, NULL);
+ if (res == NET_XMIT_SUCCESS)
+ ret = NET_XMIT_SUCCESS;
+
/* skb was consumed */
skb = NULL;
---
base-commit: 95b6f66b2659f617ce1937e790f48dc578ee014c
change-id: 20260729-ucast-send-restrict-return-f485c0eed54b
Best regards,
--
Sven Eckelmann <[email protected]>