diff options
author | Antonio Quartulli <ordex@autistici.org> | 2011-07-07 09:35:35 -0400 |
---|---|---|
committer | Marek Lindner <lindner_marek@yahoo.de> | 2011-08-22 09:16:20 -0400 |
commit | bc2790808a7a3699a7c9f72f7ad225c8504824aa (patch) | |
tree | a1b0e88091facf44e0afb78d3438c55cfd6633ad /net/batman-adv/soft-interface.c | |
parent | 015758d00251a4dd9287806cdab4b9c1298f97ed (diff) |
batman-adv: detect clients connected through a 802.11 device
Clients connected through a 802.11 device are now marked with the
TT_CLIENT_WIFI flag. This flag is also advertised with the tt
announcement.
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Diffstat (limited to 'net/batman-adv/soft-interface.c')
-rw-r--r-- | net/batman-adv/soft-interface.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c index 6ba35a2772ff..6deed44a3703 100644 --- a/net/batman-adv/soft-interface.c +++ b/net/batman-adv/soft-interface.c | |||
@@ -536,7 +536,7 @@ static int interface_set_mac_addr(struct net_device *dev, void *p) | |||
536 | if (atomic_read(&bat_priv->mesh_state) == MESH_ACTIVE) { | 536 | if (atomic_read(&bat_priv->mesh_state) == MESH_ACTIVE) { |
537 | tt_local_remove(bat_priv, dev->dev_addr, | 537 | tt_local_remove(bat_priv, dev->dev_addr, |
538 | "mac address changed", false); | 538 | "mac address changed", false); |
539 | tt_local_add(dev, addr->sa_data); | 539 | tt_local_add(dev, addr->sa_data, NULL_IFINDEX); |
540 | } | 540 | } |
541 | 541 | ||
542 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); | 542 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); |
@@ -595,7 +595,7 @@ static int interface_tx(struct sk_buff *skb, struct net_device *soft_iface) | |||
595 | goto dropped; | 595 | goto dropped; |
596 | 596 | ||
597 | /* Register the client MAC in the transtable */ | 597 | /* Register the client MAC in the transtable */ |
598 | tt_local_add(soft_iface, ethhdr->h_source); | 598 | tt_local_add(soft_iface, ethhdr->h_source, skb->skb_iif); |
599 | 599 | ||
600 | orig_node = transtable_search(bat_priv, ethhdr->h_dest); | 600 | orig_node = transtable_search(bat_priv, ethhdr->h_dest); |
601 | if (is_multicast_ether_addr(ethhdr->h_dest) || | 601 | if (is_multicast_ether_addr(ethhdr->h_dest) || |