Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60713a0c authored by Hannes Frederic Sowa's avatar Hannes Frederic Sowa Committed by David S. Miller
Browse files

ipv6: send unsolicited neighbour advertisements to all-nodes



As documented in RFC4861 (Neighbor Discovery for IP version 6) 7.2.6.,
unsolicited neighbour advertisements should be sent to the all-nodes
multicast address.

Signed-off-by: default avatarHannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent a66fe165
Loading
Loading
Loading
Loading
+1 −2
Original line number Original line Diff line number Diff line
@@ -535,7 +535,7 @@ static void ndisc_send_unsol_na(struct net_device *dev)
{
{
	struct inet6_dev *idev;
	struct inet6_dev *idev;
	struct inet6_ifaddr *ifa;
	struct inet6_ifaddr *ifa;
	struct in6_addr mcaddr;
	struct in6_addr mcaddr = IN6ADDR_LINKLOCAL_ALLNODES_INIT;


	idev = in6_dev_get(dev);
	idev = in6_dev_get(dev);
	if (!idev)
	if (!idev)
@@ -543,7 +543,6 @@ static void ndisc_send_unsol_na(struct net_device *dev)


	read_lock_bh(&idev->lock);
	read_lock_bh(&idev->lock);
	list_for_each_entry(ifa, &idev->addr_list, if_list) {
	list_for_each_entry(ifa, &idev->addr_list, if_list) {
		addrconf_addr_solict_mult(&ifa->addr, &mcaddr);
		ndisc_send_na(dev, NULL, &mcaddr, &ifa->addr,
		ndisc_send_na(dev, NULL, &mcaddr, &ifa->addr,
			      /*router=*/ !!idev->cnf.forwarding,
			      /*router=*/ !!idev->cnf.forwarding,
			      /*solicited=*/ false, /*override=*/ true,
			      /*solicited=*/ false, /*override=*/ true,