Skip to contentSkip to conversation

batman-adv: fix local TT check for outgoing arp requests in DAT

PATCH Applied Antonio Quartulli 2 participants 2 messages Mar 29, 2014 – Mar 31, 2014

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 batman-adv: fix local TT check for outgoing arp requests in DAT

From: Antonio Quartulli <[email protected]>

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.

---

Changes from v2:
- added reported-by clause

 distributed-arp-table.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
distributed-arp-table.c +1 -2
index 5bb37a8..a5d75be 100644
@@ -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;
 		}
Signature · 1 line
1.8.3.2
#1 lore raw
Quoted 18 lines · On Saturday 29 March 2014 17:27:38 Antonio Quartulli wrote:

From: Antonio Quartulli <[email protected]>

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.

Quoted 7 lines

---

Changes from v2:
- added reported-by clause

 distributed-arp-table.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Applied in revision 1c2e700.

Thanks,
Marek