From ebf8ccf7bb8c5d7111b04a76c9b5bc9c8e0c6327 Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Wed, 17 Jun 2009 20:45:52 +0000 Subject: Handle invalid AMPQ data to a cluster by closing the offending connection. Prior to this fix, invalid data shut down the whole cluster. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@785788 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/cluster/Connection.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'cpp/src/qpid/cluster/Connection.cpp') diff --git a/cpp/src/qpid/cluster/Connection.cpp b/cpp/src/qpid/cluster/Connection.cpp index e7dac82159..2db8879eb5 100644 --- a/cpp/src/qpid/cluster/Connection.cpp +++ b/cpp/src/qpid/cluster/Connection.cpp @@ -198,6 +198,12 @@ void Connection::deliverClose () { cluster.erase(self); } +// The connection has been killed for misbehaving +void Connection::abort() { + connection.abort(); + cluster.erase(self); +} + // Member of a shadow connection left the cluster. void Connection::left() { assert(isShadow()); -- cgit v1.2.1