summaryrefslogtreecommitdiffstats
path: root/avahi-core/server.c
diff options
context:
space:
mode:
authorSjoerd Simons <sjoerd@debian.org>2008-01-28 12:49:53 +0000
committerSjoerd Simons <sjoerd@debian.org>2008-01-28 12:49:53 +0000
commit9a048b843719ad831c17b030ac522bc1e57122f8 (patch)
tree9b6f8378f4e5f79bf9c90d9921848793c0c2656a /avahi-core/server.c
parentb58b25b6a55e547ebcf75115415753ed67fe1038 (diff)
Make the poof algorithm only positive if 4 unanswered queries each
at least one second apart are observed. This reduces the likelyhood of false positives a lot. git-svn-id: file:///home/lennart/svn/public/avahi/trunk@1746 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'avahi-core/server.c')
-rw-r--r--avahi-core/server.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/avahi-core/server.c b/avahi-core/server.c
index ebd0bff..453db09 100644
--- a/avahi-core/server.c
+++ b/avahi-core/server.c
@@ -585,7 +585,8 @@ static void handle_query_packet(AvahiServer *s, AvahiDnsPacket *p, AvahiInterfac
if (!legacy_unicast && !from_local_iface) {
reflect_query(s, i, key);
- avahi_cache_start_poof(i->cache, key, a);
+ if (!unicast_response)
+ avahi_cache_start_poof(i->cache, key, a);
}
if (avahi_dns_packet_get_field(p, AVAHI_DNS_FIELD_ANCOUNT) == 0 &&