batman-adv: Disallow originator addressing within mesh layer
For a host in the mesh network, the batman layer should be transparent. However, we had one exception, data packets within the mesh network which have the same destination as a originator are being routed to that node, although there is no host that node's bat0 interface and therefore gets dropped anyway. This commit removes this exception. Signed-off-by: Linus Lüssing <linus.luessing@ascom.ch> Signed-off-by: Sven Eckelmann <sven@narfation.org>
This commit is contained in:
Родитель
ee1e884194
Коммит
3878f1f075
|
@ -281,7 +281,7 @@ int unicast_send_skb(struct sk_buff *skb, struct bat_priv *bat_priv)
|
|||
{
|
||||
struct ethhdr *ethhdr = (struct ethhdr *)skb->data;
|
||||
struct unicast_packet *unicast_packet;
|
||||
struct orig_node *orig_node;
|
||||
struct orig_node *orig_node = NULL;
|
||||
struct batman_if *batman_if;
|
||||
struct neigh_node *router;
|
||||
int data_len = skb->len;
|
||||
|
@ -292,11 +292,6 @@ int unicast_send_skb(struct sk_buff *skb, struct bat_priv *bat_priv)
|
|||
/* get routing information */
|
||||
if (is_multicast_ether_addr(ethhdr->h_dest))
|
||||
orig_node = (struct orig_node *)gw_get_selected(bat_priv);
|
||||
else
|
||||
orig_node = ((struct orig_node *)hash_find(bat_priv->orig_hash,
|
||||
compare_orig,
|
||||
choose_orig,
|
||||
ethhdr->h_dest));
|
||||
|
||||
/* check for hna host */
|
||||
if (!orig_node)
|
||||
|
|
Загрузка…
Ссылка в новой задаче