ipv6: drop packets when source address is multicast
Subsystems (3)
PATCH 1/1 ipv6: drop packets when source address is multicast
RFC 4291 Section 2.7 says Multicast addresses must not be used as source addresses in IPv6 packets - drop them on input so we don't process the packet further.
Signed-off-by Brian Haley <[email protected]>
Reported-and-Tested-by Kumar Sanghvi <[email protected]>
net/ipv6/ip6_input.c +8 -0
@@ -111,6 +111,14 @@ int ipv6_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt ipv6_addr_loopback(&hdr->daddr)) goto err; +/* +* RFC4291 2.7 +* Multicast addresses must not be used as source addresses in IPv6 +* packets or appear in any Routing header. +*/ +if (ipv6_addr_is_multicast (&hdr->saddr)) + goto err; + skb->transport_header = skb->network_header +sizeof (*hdr);IP6CB (skb)->nhoff = offsetof(struct ipv6hdr , nexthdr);
From: Brian Haley <[email protected]>
Date: Tue, 08 Nov 2011 09:41:42 -0500
Quoted 6 lines
RFC 4291 Section 2.7 says Multicast addresses must not be used as source addresses in IPv6 packets - drop them on input so we don't process the packet further.
Signed-off-by Brian Haley <[email protected]>Reported-and-Tested-by Kumar Sanghvi <[email protected]>
Applied.