diff options
Diffstat (limited to 'cpp/src/qpid/broker/PreviewConnection.cpp')
| -rw-r--r-- | cpp/src/qpid/broker/PreviewConnection.cpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/cpp/src/qpid/broker/PreviewConnection.cpp b/cpp/src/qpid/broker/PreviewConnection.cpp index 8901aa9f9d..6f411c99d6 100644 --- a/cpp/src/qpid/broker/PreviewConnection.cpp +++ b/cpp/src/qpid/broker/PreviewConnection.cpp @@ -18,6 +18,9 @@ * under the License. * */ + +#include "config.h" + #include "PreviewConnection.h" #include "SessionState.h" #include "BrokerAdapter.h" @@ -36,6 +39,10 @@ #include <iostream> #include <assert.h> +#if HAVE_SASL +#include <sasl/sasl.h> +#endif + using namespace boost; using namespace qpid::sys; using namespace qpid::framing; @@ -87,6 +94,9 @@ public: PreviewConnection::PreviewConnection(ConnectionOutputHandler* out_, Broker& broker_, const std::string& mgmtId_, bool isLink) : ConnectionState(out_, broker_), +#if HAVE_SASL + sasl_conn(NULL), +#endif adapter(*this, isLink), mgmtClosing(false), mgmtId(mgmtId_) @@ -108,7 +118,14 @@ PreviewConnection::PreviewConnection(ConnectionOutputHandler* out_, Broker& brok } } -PreviewConnection::~PreviewConnection () {} +PreviewConnection::~PreviewConnection () { +#if HAVE_LIBSASL2 + if (NULL != sasl_conn) { + sasl_dispose(&sasl_conn); + sasl_conn = NULL; + } +#endif +} void PreviewConnection::received(framing::AMQFrame& frame){ if (mgmtClosing) |
