From patchwork Tue Oct 25 20:42:41 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Antonio Quartulli X-Patchwork-Id: 1328 Return-Path: Received: from contumacia.investici.org (contumacia.investici.org [178.255.144.35]) by open-mesh.org (Postfix) with ESMTPS id 7C3D96007B1 for ; Tue, 25 Oct 2011 22:43:50 +0200 (CEST) Authentication-Results: open-mesh.org; dkim=pass (1024-bit key) header.i=@autistici.org; dkim-adsp=pass Received: from [178.255.144.35] (contumacia [178.255.144.35]) (Authenticated sender: ordex@autistici.org) by localhost (Postfix) with ESMTPSA id 1E8DAE8273; Tue, 25 Oct 2011 20:43:48 +0000 (UTC) X-DKIM: Sendmail DKIM Filter v2.8.2 contumacia.investici.org 1E8DAE8273 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1319575429; bh=3sKBxQrlEzsVLLXKt6hb+l1SlXjJrvLNCTqra0abtwk=; h=From:To:Cc:Subject:Date:Message-Id; b=YJQNWFS1Tw2W8VjVGA+R2DimEA6jcGRzME4yj98pDq0t3nU6kj8DEWVugUYNHqM8C FdepUkhB0QE4/gXqX20NUoPh6+kGjz9yNlW+lEQK+kZDX2kgemC5XYDQBHhXtqa0lW aBcvfysR57vfXejD+Uy6NDT6P6lTneu5TOU7ynK8= From: Antonio Quartulli To: stable@kernel.org Date: Tue, 25 Oct 2011 22:42:41 +0200 Message-Id: <1319575362-20828-1-git-send-email-ordex@autistici.org> X-Mailer: git-send-email 1.7.3.4 Cc: b.a.t.m.a.n@lists.open-mesh.org, Marek Lindner Subject: [B.A.T.M.A.N.] [PATCH 1/2] batman-adv: fix tt_local_reset_flags() function X-BeenThere: b.a.t.m.a.n@lists.open-mesh.org X-Mailman-Version: 2.1.13 Precedence: list Reply-To: The list for a Better Approach To Mobile Ad-hoc Networking List-Id: The list for a Better Approach To Mobile Ad-hoc Networking List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Oct 2011 20:43:50 -0000 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 Signed-off-by: Antonio Quartulli Acked-by: Junkeun Song Signed-off-by: Marek Lindner --- David S. Miller already merged this patch as 31901264511cf20c5ed33b8649a3ca9ce28df60b in his net-next tree 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 fb6931d..f599db9 100644 --- a/net/batman-adv/translation-table.c +++ b/net/batman-adv/translation-table.c @@ -1668,6 +1668,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); }