Message ID | 1354448693-32155-1-git-send-email-shmulik.ladkani@gmail.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
From: Shmulik Ladkani <shmulik.ladkani@gmail.com> Date: Sun, 2 Dec 2012 13:44:53 +0200 > As of 026359b [ipv6: Send ICMPv6 RSes only when RAs are accepted], > Router Solicitations are sent whenever kernel accepts Router > Advertisements on the interface. > > However, this logic isn't reflected in 'addrconf_rs_timer'. > > The timer fails to issue subsequent RS messages (and fails to re-arm > itself) if forwarding is enabled and the special hybrid mode is > enabled (accept_ra=2). > > Fix the condition determining whether next RS should be sent, by using > 'ipv6_accept_ra()'. > > Reported-by: Ami Koren <amikoren@yahoo.com> > Signed-off-by: Shmulik Ladkani <shmulik.ladkani@gmail.com> Applied, thanks. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index ca1ed8a..3b990a2 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c @@ -2843,7 +2843,7 @@ static void addrconf_rs_timer(unsigned long data) if (idev->dead || !(idev->if_flags & IF_READY)) goto out; - if (idev->cnf.forwarding) + if (!ipv6_accept_ra(idev)) goto out; /* Announcement received after solicitation was sent */
As of 026359b [ipv6: Send ICMPv6 RSes only when RAs are accepted], Router Solicitations are sent whenever kernel accepts Router Advertisements on the interface. However, this logic isn't reflected in 'addrconf_rs_timer'. The timer fails to issue subsequent RS messages (and fails to re-arm itself) if forwarding is enabled and the special hybrid mode is enabled (accept_ra=2). Fix the condition determining whether next RS should be sent, by using 'ipv6_accept_ra()'. Reported-by: Ami Koren <amikoren@yahoo.com> Signed-off-by: Shmulik Ladkani <shmulik.ladkani@gmail.com> --- net/ipv6/addrconf.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)