summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTrent Lloyd <lathiat@bur.st>2007-07-20 18:13:42 +0000
committerTrent Lloyd <lathiat@bur.st>2007-07-20 18:13:42 +0000
commit85b85902f68d51cd89b09f2789dbaf72c8d27f04 (patch)
treedbaf8ca8d2c3a499f19ad79c7f73ea9206bda06d
parent52502ca7cb37e480fba67a5e74f4549171cc5817 (diff)
* Modify the local conflict detection to allow multiple identical
records, so it is consistent with the network conflict detection. This allows you to publish shared services from the same machine not just different machines. git-svn-id: file:///home/lennart/svn/public/avahi/trunk@1499 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
-rw-r--r--avahi-core/entry.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/avahi-core/entry.c b/avahi-core/entry.c
index e2a7c6c..55c9ea2 100644
--- a/avahi-core/entry.c
+++ b/avahi-core/entry.c
@@ -161,6 +161,11 @@ static int check_record_conflict(AvahiServer *s, AvahiIfIndex interface, AvahiPr
if ((flags & AVAHI_PUBLISH_ALLOW_MULTIPLE) && (e->flags & AVAHI_PUBLISH_ALLOW_MULTIPLE) )
continue;
+ if (avahi_record_equal_no_ttl(r, e->record)) {
+ /* The records are the same, not a conflict in any case */
+ continue;
+ }
+
if ((interface <= 0 ||
e->interface <= 0 ||
e->interface == interface) &&