Messages in this thread Patch in this message | | | From | Andi Kleen <> | Subject | [PATCH] [50/50] ipv6: add special mode forwarding=2 to send RS while | Date | Thu, 28 Jul 2011 16:44:55 -0700 (PDT) |
| |
2.6.35-longterm review patch. If anyone has any objections, please let me know.
------------------ From: Thomas Graf <tgraf@infradead.org>
[ upstream commit c3bccac2fa76f1619dfe4fb7b9bee69de7f066d8 ] configured as router
Similar to accepting router advertisement, the IPv6 stack does not send router solicitations if forwarding is enabled.
This patch enables this behavior to be overruled by setting forwarding to the special value 2.
Signed-off-by: Thomas Graf <tgraf@infradead.org> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Andi Kleen <ak@linux.intel.com>
Index: linux-2.6.35.y/net/ipv6/addrconf.c =================================================================== --- linux-2.6.35.y.orig/net/ipv6/addrconf.c +++ linux-2.6.35.y/net/ipv6/addrconf.c @@ -2960,7 +2960,8 @@ static void addrconf_dad_completed(struc start sending router solicitations. */ - if (ifp->idev->cnf.forwarding == 0 && + if ((ifp->idev->cnf.forwarding == 0 || + ifp->idev->cnf.forwarding == 2) && ifp->idev->cnf.rtr_solicits > 0 && (dev->flags&IFF_LOOPBACK) == 0 && (ipv6_addr_type(&ifp->addr) & IPV6_ADDR_LINKLOCAL)) {
| |