diff options
author | Simon Kelley <simon@thekelleys.org.uk> | 2012-12-01 21:21:13 +0000 |
---|---|---|
committer | Simon Kelley <simon@thekelleys.org.uk> | 2012-12-01 21:21:13 +0000 |
commit | d89fb4ed4fedb1d79900eb62ac66f4efbcad6a0f (patch) | |
tree | d5ad4a5ddafa7cff87464e845bf40c2f33d2a80a | |
parent | 295a54eed3b581b3b5887e773005c4fdd0d8f9b6 (diff) | |
download | dnsmasq-d89fb4ed4fedb1d79900eb62ac66f4efbcad6a0f.tar.gz |
Check interface for router advertisements.v2.64rc2
-rw-r--r-- | CHANGELOG | 4 | ||||
-rw-r--r-- | src/dbus.c | 2 | ||||
-rw-r--r-- | src/radv.c | 3 |
3 files changed, 7 insertions, 2 deletions
@@ -54,6 +54,10 @@ version 2.64 Makefile tweak to do dependency checking on header files. Thanks to Johan Peeters for the patch. + + Check interface for outgoing unsolicited router + advertisements, rather than relying on interface address + configuration. Thanks to Gene Czarinski for the patch. version 2.63 @@ -327,7 +327,7 @@ static DBusMessage* dbus_read_servers_ex(DBusMessage *message, int strings) const char *str = NULL; union mysockaddr addr, source_addr; char interface[IF_NAMESIZE]; - char *str_addr, *str_domain; + char *str_addr, *str_domain = NULL; if (strings) { @@ -482,7 +482,8 @@ time_t periodic_ra(time_t now) ever be able to send ra's and satistfy it. */ if (iface_enumerate(AF_INET6, ¶m, iface_search)) context->ra_time = 0; - else if (indextoname(daemon->icmp6fd, param.iface, interface)) + else if (indextoname(daemon->icmp6fd, param.iface, interface) && + iface_check(AF_LOCAL, NULL, interface)) send_ra(param.iface, interface, NULL); } |