45 lines
1.6 KiB
Diff
45 lines
1.6 KiB
Diff
From 1c2e700fa93e6de3a2ae3725cf437504683b894a Mon Sep 17 00:00:00 2001
|
|
From: Antonio Quartulli <antonio@open-mesh.com>
|
|
Date: Sat, 29 Mar 2014 17:27:38 +0100
|
|
Subject: [PATCH 5/9] batman-adv: fix local TT check for outgoing arp requests
|
|
in DAT
|
|
|
|
Change introduced by d6bd8b36fa1f3d72a6fd5942a6e9bde6ddafcd0d
|
|
("batman-adv: make DAT drop ARP requests targeting local clients")
|
|
implements a check that prevents DAT from using the caching
|
|
mechanism when the client that is supposed to provide a reply
|
|
to an arp request is local.
|
|
|
|
However change brought by 3e26722bc9f248ec4316749fc1957365c0fa5e4b
|
|
("batman-adv: make the Distributed ARP Table vlan aware")
|
|
has not converted the above check into its vlan aware version
|
|
thus making it useless when the local client is behind a vlan.
|
|
|
|
Fix the behaviour by properly specifying the vlan when
|
|
checking for a client being local or not.
|
|
|
|
Reported-by: Simon Wunderlich <simon@open-mesh.com>
|
|
Signed-off-by: Antonio Quartulli <antonio@open-mesh.com>
|
|
Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch>
|
|
---
|
|
distributed-arp-table.c | 3 +--
|
|
1 file changed, 1 insertion(+), 2 deletions(-)
|
|
|
|
diff --git a/distributed-arp-table.c b/distributed-arp-table.c
|
|
index 5bb37a8..a5d75be 100644
|
|
--- a/distributed-arp-table.c
|
|
+++ b/distributed-arp-table.c
|
|
@@ -940,8 +940,7 @@ bool batadv_dat_snoop_outgoing_arp_request(struct batadv_priv *bat_priv,
|
|
* additional DAT answer may trigger kernel warnings about
|
|
* a packet coming from the wrong port.
|
|
*/
|
|
- if (batadv_is_my_client(bat_priv, dat_entry->mac_addr,
|
|
- BATADV_NO_FLAGS)) {
|
|
+ if (batadv_is_my_client(bat_priv, dat_entry->mac_addr, vid)) {
|
|
ret = true;
|
|
goto out;
|
|
}
|
|
--
|
|
2.0.0.rc2
|
|
|