
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