Bug 1048653 - UnicastOnly option still sends multicast RA
Summary: UnicastOnly option still sends multicast RA
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: radvd
Version: 20
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Pavel Šimerda (pavlix)
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-01-06 02:41 UTC by Scott Shambarger
Modified: 2014-03-28 03:17 UTC (History)
4 users (show)

Fixed In Version: radvd-1.9.9-1.fc20
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-03-28 03:17:11 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Patch to suppress multicast RA if UnicastOnly is set (476 bytes, patch)
2014-01-07 02:44 UTC, Scott Shambarger
no flags Details | Diff
Patch to update spec file (460 bytes, patch)
2014-01-07 02:46 UTC, Scott Shambarger
no flags Details | Diff

Description Scott Shambarger 2014-01-06 02:41:41 UTC
Description of problem:
Multicast Router Advertisements are still sent when UnicastOnly option is enabled.

Version-Release number of selected component (if applicable):
radvd-1.9.2-4.fc20

How reproducible:
Always

Steps to Reproduce:
1. Configure radvd with the following options on an interface:
  AdvSendAdvert on; # required for response to Router Solicitations
  UnicastOnly on; # should prevent periodic Router Advertisements
  MaxRtrAdvInterval 60; # to provide timely demonstration of bug
  ... and configure at least on prefix to advertise...
2. Monitor ip6 traffic on interface
3. Start radvd

Actual results:
Three multicast RAs send rapidly (15 secs) at startup (normal radvd startup, but even these probably shouldn't be sent)
Every approx 45 seconds, a multicast RA is sent (random between min/max RtrAdvInterval)


Expected results:
No multicast RA should be sent.

Additional info:
A quick glance at the code shows that the function send_ra in send.c (when called with "dest" NULL), sets the dest to the multicast address.

The code should probably have:

if((dest == NULL) && iface->UnicastOnly) {
  return 0;
}

at about line 156 just before the check_allrouters_membership() function call...

Comment 1 Pavel Šimerda (pavlix) 2014-01-06 14:59:46 UTC
Hi Scott, did you try to bring it up upstream?

Comment 2 Scott Shambarger 2014-01-07 02:44:33 UTC
Created attachment 846392 [details]
Patch to suppress multicast RA if UnicastOnly is set

Comment 3 Scott Shambarger 2014-01-07 02:46:06 UTC
Created attachment 846394 [details]
Patch to update spec file

Comment 4 Scott Shambarger 2014-01-07 02:50:44 UTC
Updated send.c to not call send_ra() from send_ra_forall() when dest==NULL and UnicastOnly is set.  This appears to be the only hole in the logic I can find, but still resets the next_multicast timer to avoid any poll timer issues.

Tested, and it works as expected (UnicastOnly on and off).

I'll create a patch against the upstream git (currently post 1.9.7) and submit it to the mailing list.  If they revise it, I'll update the patch here.

Comment 5 Pavel Šimerda (pavlix) 2014-01-07 08:56:53 UTC
Btw, I had recently success with radvd github issues as well.

Comment 6 Pavel Šimerda (pavlix) 2014-02-19 08:50:13 UTC
(In reply to Scott Shambarger from comment #4)
> I'll create a patch against the upstream git (currently post 1.9.7) and
> submit it to the mailing list.  If they revise it, I'll update the patch
> here.

Any updates?

Comment 7 Scott Shambarger 2014-03-14 04:27:05 UTC
Posted my patch, but I think I need to subscribe to the list to post... (thought it was waiting for moderation).  I've applied for membership, will update when/if I get feedback on the patch.

Comment 8 Reuben Hawkins 2014-03-17 17:26:35 UTC
Hi Scott,

I'm the radvd maintainer.  I saw the bug report a while back and I implemented the patch alread.  I credited you for the work in the git commit message and added a note in CHANGES.

radvd 1.9.9 is the version with your fix.

But I did not see your patch on the mailing list.

Comment 9 Fedora Update System 2014-03-18 09:25:37 UTC
radvd-1.9.9-1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/radvd-1.9.9-1.fc20

Comment 10 Pavel Šimerda (pavlix) 2014-03-18 09:30:54 UTC
(In reply to Reuben Hawkins from comment #8)
> Hi Scott,
> 
> I'm the radvd maintainer.  I saw the bug report a while back and I
> implemented the patch alread.  I credited you for the work in the git commit
> message and added a note in CHANGES.
> 
> radvd 1.9.9 is the version with your fix.
> 
> But I did not see your patch on the mailing list.

Hi Reuben,

mailing lists typically allow other people to post without subscription by notifying the list administrator(s) and letting them decide whether the message should go there or not.

I dislike the current situation with the various mailing lists but I just decided to subscribe to all sorts of stuff I will never read, just to get the ability to post without such problems. I don't think we can do anything with that expect long term communication with mailing list software developers.

Thanks for fixing the bug in 1.9.9, it slipped my attention, as we already have 1.9.9 in rawhide. I just built it for f20 and submitted an update (see above).

Cheers,

Pavel

Comment 11 Fedora Update System 2014-03-19 08:43:05 UTC
Package radvd-1.9.9-1.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing radvd-1.9.9-1.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-4050/radvd-1.9.9-1.fc20
then log in and leave karma (feedback).

Comment 12 Scott Shambarger 2014-03-20 02:34:48 UTC
(In reply to Reuben Hawkins from comment #8)
> Hi Scott,
> 
> I'm the radvd maintainer.  I saw the bug report a while back and I
> implemented the patch alread.  I credited you for the work in the git commit
> message and added a note in CHANGES.
> 
> radvd 1.9.9 is the version with your fix.
> 
> But I did not see your patch on the mailing list.

My post to the mailing list disappeared into the ether - I tried to subscribe to the list, but never received a confirmation (and haven't received any messages yet...)

Tried out the 1.9.9 build and it appears to work as expected! (added karma)

Bug appears fixed. Thanks :)

Comment 13 Fedora Update System 2014-03-28 03:17:11 UTC
radvd-1.9.9-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.