
On Wed, Nov 7, 2012 at 3:05 PM, Gene Czarcinski <gene@czarc.net> wrote:
I have a working patch to have dnsmasq support RA instead of radvd. However, something has come up and it will be a week to ten days before I can get it in shape to submit.
The current patch has three variables added to the _virNetworkObj structure: dnsmasqRA flag and both major and minor values for the dnsmasq's version.
I use "dnsmasq --version" and then parse out the major/minor version values. If major>2, then dnamsqFA=1. If major=2 and minor>=63, then dnsmasqRA=1. For all other cases, dnsmasqRA=0.
Code is added to the radvd functions which checks dnsmasqRA and exits if it is 1.
Code is added to the dnsmasq configuration file if dnsmasqRa=1. If dhcp-range or dhcp-hosts is specified for IPv6, then enable-ra is added for stateful (dhcpv6). Otherwise, a special "dhcp-range=<ipv6-subnet-address>,ra-only" so that the ManagedFlag will be off in the RA packets for stateless operation.
OK, how does that sound? Everyone comfortable with that?
Another thing is that I plan to add a test such that if the radvd executable is not valid, the dnsmasqRA=1.
As I was doing this, I also looked through the libvirt.spec file. My, what a wonderful example of wizardly that is. Anyway, I thought some updates may be in ortder:
- increase the minimum version for dnsmasq from 2.41 to 2.48.
- why is radvd required for rpmbuild?
- in light of my patch, make radvd an optional runtime requirement. I am not a spec file expert by any means but there must be a way to not require radvd if dnsmasq >- 2.63.
Comments?
Gene
I'm still not thrilled that you're pushing forward with requiring 2.63 + a few patches backported from 2.64 into 2.63 and only checking against 2.63. -- Doug Goldstein