Fix non-response to router-solicitations when
router-advertisement configured, but DHCPv6 not
configured.
diff --git a/CHANGELOG b/CHANGELOG
index a18e111..11d4c7f 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -12,6 +12,10 @@
which are not divisible by 8. Thanks to Andre Coetzee
for spotting this.
+ Fix non-response to router-solicitations when
+ router-advertisement configured, but DHCPv6 not
+ configured. Thanks to Marien Zwart for the patch.
+
version 2.61
Re-write interface discovery code on *BSD to use
diff --git a/src/dnsmasq.c b/src/dnsmasq.c
index 1b951f0..a6237ba 100644
--- a/src/dnsmasq.c
+++ b/src/dnsmasq.c
@@ -849,14 +849,11 @@
}
#ifdef HAVE_DHCP6
- if (daemon->dhcp6)
- {
- if (FD_ISSET(daemon->dhcp6fd, &rset))
- dhcp6_packet(now);
+ if (daemon->dhcp6 && FD_ISSET(daemon->dhcp6fd, &rset))
+ dhcp6_packet(now);
- if (daemon->ra_contexts && FD_ISSET(daemon->icmp6fd, &rset))
- icmp6_packet();
- }
+ if (daemon->ra_contexts && FD_ISSET(daemon->icmp6fd, &rset))
+ icmp6_packet();
#endif
# ifdef HAVE_SCRIPT