Make sure that claiming of devices due to dat handling is only done for non-local mac addresses. As dat is handled after the normal bla code this should not break the roaming client scenario for dat.
Signed-off-by: Andreas Pape apape@phoenixcontact.com --- net/batman-adv/bridge_loop_avoidance.c | 18 ++++++++++++------ 1 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/net/batman-adv/bridge_loop_avoidance.c b/net/batman-adv/bridge_loop_avoidance.c index 9e53fba..6311ca2 100644 --- a/net/batman-adv/bridge_loop_avoidance.c +++ b/net/batman-adv/bridge_loop_avoidance.c @@ -1956,13 +1956,19 @@ bool batadv_bla_handle_local_claim(struct batadv_priv *bat_priv, uint8_t *addr, primary_if->net_dev->dev_addr)) ret = false; } else { - /* If there is no claim, claim the device */ - batadv_dbg(BATADV_DBG_BLA, bat_priv, - "Handle claim locally for currently not claimed mac %pM.\n", - search_claim.addr); + /* If there is no claim, claim the device + * but only if this isn't a mac address + * out of the local tt + */ + if (!batadv_is_my_client(bat_priv, addr, vid)) { + batadv_dbg(BATADV_DBG_BLA, bat_priv, + "bla_handle_local_claim(): Handle claim " + "locally for currently not claimed mac %pM.\n", + search_claim.addr);
- batadv_handle_claim(bat_priv, primary_if, - primary_if->net_dev->dev_addr, addr, vid); + batadv_handle_claim(bat_priv, primary_if, + primary_if->net_dev->dev_addr, addr, vid); + } }
out: -- 1.7.0.4
.................................................................. PHOENIX CONTACT ELECTRONICS GmbH
Sitz der Gesellschaft / registered office of the company: 31812 Bad Pyrmont USt-Id-Nr.: DE811742156 Amtsgericht Hannover HRB 100528 / district court Hannover HRB 100528 Geschäftsführer / Executive Board: Roland Bent, Dr. Martin Heubeck ___________________________________________________________________ Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese Mail. Das unerlaubte Kopieren, jegliche anderweitige Verwendung sowie die unbefugte Weitergabe dieser Mail ist nicht gestattet. ---------------------------------------------------------------------------------------------------- This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure, distribution or other use of the material or parts thereof is strictly forbidden. ___________________________________________________________________