summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Ierymenko <adam.ierymenko@gmail.com>2016-09-07 15:34:34 -0700
committerAdam Ierymenko <adam.ierymenko@gmail.com>2016-09-07 15:34:34 -0700
commit20278bb9e47ec0cc16619d281224473f90f7b048 (patch)
tree60d8979295a2b09bd2cf432855d6559c88dbfc8c
parentc7a4da3dd3bb429b5d2f69373388b3b22a6544cb (diff)
downloadinfinitytier-20278bb9e47ec0cc16619d281224473f90f7b048.tar.gz
infinitytier-20278bb9e47ec0cc16619d281224473f90f7b048.zip
Also send MULTICAST_LIKEs to controllers.
-rw-r--r--node/Network.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/node/Network.cpp b/node/Network.cpp
index 7c2a4084..4fd88f67 100644
--- a/node/Network.cpp
+++ b/node/Network.cpp
@@ -1237,6 +1237,13 @@ void Network::_announceMulticastGroups(const MulticastGroup *const onlyThis)
}
_announceMulticastGroupsTo(*a,groups);
}
+
+ // Announce to controller, which does not need our COM since it obviously
+ // knows if we are a member. Of course if we already did or are going to
+ // below then we can skip it here.
+ const Address c(controller());
+ if ( (std::find(upstreams.begin(),upstreams.end(),c) == upstreams.end()) && (!_memberships.contains(c)) )
+ _announceMulticastGroupsTo(c,groups);
}
// Make sure that all "network anchors" have Membership records so we will