diff options
author | Antonio Quartulli <ordex@autistici.org> | 2012-01-15 18:36:58 -0500 |
---|---|---|
committer | Antonio Quartulli <ordex@autistici.org> | 2012-05-14 03:05:08 -0400 |
commit | 521251f2f5fa16747cc21e71580e404af855d140 (patch) | |
tree | 9f81af835730d367a7d26bbda06ebc47e5ff9515 /net/batman-adv | |
parent | a77e8c61dbe9c6abb7072c02f41271a489370f0c (diff) |
batman-adv: unset the TT_CLIENT_PENDING flag if the new local entry already exists
When trying to add a new tt_local_entry, if such entry already exists, we have
to ensure that the TT_CLIENT_PENDING flag is not set, otherwise the entry will
be deleted soon.
Reported-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Diffstat (limited to 'net/batman-adv')
-rw-r--r-- | net/batman-adv/translation-table.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/batman-adv/translation-table.c b/net/batman-adv/translation-table.c index b3fb597c79b5..a66c2dcd1088 100644 --- a/net/batman-adv/translation-table.c +++ b/net/batman-adv/translation-table.c | |||
@@ -206,6 +206,8 @@ void tt_local_add(struct net_device *soft_iface, const uint8_t *addr, | |||
206 | 206 | ||
207 | if (tt_local_entry) { | 207 | if (tt_local_entry) { |
208 | tt_local_entry->last_seen = jiffies; | 208 | tt_local_entry->last_seen = jiffies; |
209 | /* possibly unset the TT_CLIENT_PENDING flag */ | ||
210 | tt_local_entry->common.flags &= ~TT_CLIENT_PENDING; | ||
209 | goto out; | 211 | goto out; |
210 | } | 212 | } |
211 | 213 | ||