summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster/Cluster.cpp
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2010-08-23 21:04:33 +0000
committerAlan Conway <aconway@apache.org>2010-08-23 21:04:33 +0000
commit50ed4bea1348e2a8f7e2df82cb3148798862011c (patch)
tree0eeebc6ccb64b770313dea786766e89eaa15e949 /cpp/src/qpid/cluster/Cluster.cpp
parent867cc757efb2341a1293f2daa412b8aacd75c515 (diff)
downloadqpid-python-50ed4bea1348e2a8f7e2df82cb3148798862011c.tar.gz
Check for and abort invalid catchup connections.
Detect attempt to make a catch-up connection while we are not expecting an update. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@988312 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/cluster/Cluster.cpp')
-rw-r--r--cpp/src/qpid/cluster/Cluster.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/cpp/src/qpid/cluster/Cluster.cpp b/cpp/src/qpid/cluster/Cluster.cpp
index 3f1d79d382..df0e612af7 100644
--- a/cpp/src/qpid/cluster/Cluster.cpp
+++ b/cpp/src/qpid/cluster/Cluster.cpp
@@ -908,6 +908,11 @@ void Cluster::updateInRetracted() {
checkUpdateIn(l);
}
+bool Cluster::isExpectingUpdate() {
+ Lock l(lock);
+ return state <= UPDATEE;
+}
+
void Cluster::checkUpdateIn(Lock& l) {
if (state != UPDATEE) return; // Wait till we reach the stall point.
if (!updateClosed) return; // Wait till update connection closes.