A tt_local_entry which ROAM flag is set cannot be considered a local client anymore. Having the ROAM flag set means that the client roamed away and that the nodes received a ROAMING_ADV for such event
Signed-off-by: Antonio Quartulli ordex@autistici.org --- translation-table.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/translation-table.c b/translation-table.c index 0e18348..78d02fb 100644 --- a/translation-table.c +++ b/translation-table.c @@ -2042,7 +2042,8 @@ bool batadv_is_my_client(struct batadv_priv *bat_priv, const uint8_t *addr) /* Check if the client has been logically deleted (but is kept for * consistency purpose) */ - if (tt_local_entry->common.flags & BATADV_TT_CLIENT_PENDING) + if ((tt_local_entry->common.flags & BATADV_TT_CLIENT_PENDING) || + (tt_local_entry->common.flags & BATADV_TT_CLIENT_ROAM)) goto out; ret = true; out: