public inbox for b.a.t.m.a.n@lists.open-mesh.org
 help / color / mirror / Atom feed
* [B.A.T.M.A.N.] [PATCHv2] batman-adv: fix tt_local_reset_flags() function
@ 2011-10-16 16:53 Antonio Quartulli
  2011-10-17 12:01 ` Marek Lindner
  0 siblings, 1 reply; 2+ messages in thread
From: Antonio Quartulli @ 2011-10-16 16:53 UTC (permalink / raw)
  To: b.a.t.m.a.n

Currently the counter of tt_local_entry structures (tt_local_num) is incremented
each time the tt_local_reset_flags() is invoked causing the node to send wrong
TT_REPONSE packets containing a copy of non-initialised memory thus corrupting
other nodes global translation table and making higher level communication
impossible.

Reported-by: Junkeun Song <jun361@gmail.com>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Acked-by: Junkeun Song <jun361@gmail.com>
---
 translation-table.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/translation-table.c b/translation-table.c
index 2d2cfc1..d4a3917 100644
--- a/translation-table.c
+++ b/translation-table.c
@@ -1727,6 +1727,8 @@ static void tt_local_reset_flags(struct bat_priv *bat_priv, uint16_t flags)
 		rcu_read_lock();
 		hlist_for_each_entry_rcu(tt_local_entry, node,
 					 head, hash_entry) {
+			if (!(tt_local_entry->flags & flags))
+				continue;
 			tt_local_entry->flags &= ~flags;
 			atomic_inc(&bat_priv->num_local_tt);
 		}
-- 
1.7.3.4


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [B.A.T.M.A.N.] [PATCHv2] batman-adv: fix tt_local_reset_flags() function
  2011-10-16 16:53 [B.A.T.M.A.N.] [PATCHv2] batman-adv: fix tt_local_reset_flags() function Antonio Quartulli
@ 2011-10-17 12:01 ` Marek Lindner
  0 siblings, 0 replies; 2+ messages in thread
From: Marek Lindner @ 2011-10-17 12:01 UTC (permalink / raw)
  To: The list for a Better Approach To Mobile Ad-hoc Networking

On Sunday, October 16, 2011 18:53:37 Antonio Quartulli wrote:
> Currently the counter of tt_local_entry structures (tt_local_num) is
> incremented each time the tt_local_reset_flags() is invoked causing the
> node to send wrong TT_REPONSE packets containing a copy of non-initialised
> memory thus corrupting other nodes global translation table and making
> higher level communication impossible.

Applied in revision d1b1d7c.

Thanks,
Marek

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-10-17 12:01 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-10-16 16:53 [B.A.T.M.A.N.] [PATCHv2] batman-adv: fix tt_local_reset_flags() function Antonio Quartulli
2011-10-17 12:01 ` Marek Lindner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox