[linux-next] LinuxNextTracking branch, master, updated. next-20161111

batman at open-mesh.org batman at open-mesh.org
Sat Nov 12 00:15:46 CET 2016


The following commit has been merged in the master branch:
commit 93bbaab455f30fd43911e0881a02107a17150a62
Author: Sven Eckelmann <sven at narfation.org>
Date:   Sat Aug 6 17:04:23 2016 +0200

    batman-adv: Reject unicast packet with zero/mcast dst address
    
    An unicast batman-adv packet cannot be transmitted to a multicast or zero
    mac address. So reject incoming packets which still have these classes of
    addresses as destination mac address in the outer ethernet header.
    
    Signed-off-by: Sven Eckelmann <sven at narfation.org>
    Signed-off-by: Simon Wunderlich <sw at simonwunderlich.de>

diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c
index 4f034df..6713bdf 100644
--- a/net/batman-adv/routing.c
+++ b/net/batman-adv/routing.c
@@ -364,8 +364,8 @@ int batadv_recv_icmp_packet(struct sk_buff *skb,
 
 	ethhdr = eth_hdr(skb);
 
-	/* packet with unicast indication but broadcast recipient */
-	if (is_broadcast_ether_addr(ethhdr->h_dest))
+	/* packet with unicast indication but non-unicast recipient */
+	if (!is_valid_ether_addr(ethhdr->h_dest))
 		goto free_skb;
 
 	/* packet with broadcast/multicast sender address */
@@ -462,8 +462,8 @@ static int batadv_check_unicast_packet(struct batadv_priv *bat_priv,
 
 	ethhdr = eth_hdr(skb);
 
-	/* packet with unicast indication but broadcast recipient */
-	if (is_broadcast_ether_addr(ethhdr->h_dest))
+	/* packet with unicast indication but non-unicast recipient */
+	if (!is_valid_ether_addr(ethhdr->h_dest))
 		return -EBADR;
 
 	/* packet with broadcast/multicast sender address */

-- 
LinuxNextTracking


More information about the linux-merge mailing list