diff options
| author | Andrew Stitcher <astitcher@apache.org> | 2009-06-08 14:34:45 +0000 |
|---|---|---|
| committer | Andrew Stitcher <astitcher@apache.org> | 2009-06-08 14:34:45 +0000 |
| commit | 4274737d8315848edc4fa0ccb534482202ce5658 (patch) | |
| tree | ef8e34f05278aa13c2e41425156a3d5a6a08ffc2 /cpp/src/qpid/sys/ssl/SslHandler.cpp | |
| parent | a811f1b32a6d3e1b9a39c36829ac6847ed6d8e42 (diff) | |
| download | qpid-python-4274737d8315848edc4fa0ccb534482202ce5658.tar.gz | |
Plumbed in an a connection abort operation to the OutputHandler
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@782649 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/sys/ssl/SslHandler.cpp')
| -rw-r--r-- | cpp/src/qpid/sys/ssl/SslHandler.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/cpp/src/qpid/sys/ssl/SslHandler.cpp b/cpp/src/qpid/sys/ssl/SslHandler.cpp index 3c7e2190e7..282c3ce8c8 100644 --- a/cpp/src/qpid/sys/ssl/SslHandler.cpp +++ b/cpp/src/qpid/sys/ssl/SslHandler.cpp @@ -7,9 +7,9 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY @@ -26,6 +26,8 @@ #include "qpid/framing/ProtocolInitiation.h" #include "qpid/log/Statement.h" +#include <boost/bind.hpp> + namespace qpid { namespace sys { namespace ssl { @@ -76,6 +78,10 @@ void SslHandler::write(const framing::ProtocolInitiation& data) aio->queueWrite(buff); } +void SslHandler::abort() { + // TODO: can't implement currently as underlying functionality not implemented + // aio->requestCallback(boost::bind(&SslHandler::eof, this, _1)); +} void SslHandler::activateOutput() { aio->notifyPendingWrite(); } @@ -111,7 +117,7 @@ void SslHandler::readbuff(SslIO& , SslIO::BufferBase* buff) { //send valid version header & close connection. write(framing::ProtocolInitiation(framing::highestProtocolVersion)); readError = true; - aio->queueWriteClose(); + aio->queueWriteClose(); } } catch (const std::exception& e) { QPID_LOG(error, e.what()); @@ -140,7 +146,7 @@ void SslHandler::eof(SslIO&) { } void SslHandler::closedSocket(SslIO&, const SslSocket& s) { - // If we closed with data still to send log a warning + // If we closed with data still to send log a warning if (!aio->writeQueueEmpty()) { QPID_LOG(warning, "CLOSING [" << identifier << "] unsent data (probably due to client disconnect)"); } |
