diff options
author | Antonio Quartulli <ordex@autistici.org> | 2012-08-27 11:44:43 +0200 |
---|---|---|
committer | Antonio Quartulli <ordex@autistici.org> | 2012-10-29 09:42:49 +0100 |
commit | 7f91d06c90204227e91a1332c8c8e527009ec778 (patch) | |
tree | f79be70eb05d80280aa523c3507298efd7bceb0e /net/batman-adv/translation-table.h | |
parent | 9f9ff08d26b2f6ecea7900a9c9543c627cd95e56 (diff) | |
download | op-kernel-dev-7f91d06c90204227e91a1332c8c8e527009ec778.zip op-kernel-dev-7f91d06c90204227e91a1332c8c8e527009ec778.tar.gz |
batman-adv: pass the WIFI flag from the local to global entry
in case of client roaming a new global entry is added while a corresponding
local one is still present. In this case the node can safely pass the WIFI flag
from the local to the global entry.
This change is required to let the AP-isolation correctly working in case of
roaming: if a generic WIFI client C roams from node A to B, A adds a global
entry for C without adding any WIFI flag. The latter will be set only later,
once A has received C's advertisement from B. In this time period the
AP-Isolation (if enabled) would not correctly work since C is not marked as
WIFI, so allowing it to communicate with other WIFI clients.
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Diffstat (limited to 'net/batman-adv/translation-table.h')
-rw-r--r-- | net/batman-adv/translation-table.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/batman-adv/translation-table.h b/net/batman-adv/translation-table.h index 811fffd..9fa4fe4 100644 --- a/net/batman-adv/translation-table.h +++ b/net/batman-adv/translation-table.h @@ -24,9 +24,9 @@ int batadv_tt_len(int changes_num); int batadv_tt_init(struct batadv_priv *bat_priv); void batadv_tt_local_add(struct net_device *soft_iface, const uint8_t *addr, int ifindex); -void batadv_tt_local_remove(struct batadv_priv *bat_priv, - const uint8_t *addr, const char *message, - bool roaming); +uint16_t batadv_tt_local_remove(struct batadv_priv *bat_priv, + const uint8_t *addr, const char *message, + bool roaming); int batadv_tt_local_seq_print_text(struct seq_file *seq, void *offset); void batadv_tt_global_add_orig(struct batadv_priv *bat_priv, struct batadv_orig_node *orig_node, |