From 772484f911db95bbc0c1ac599ed72b2ee143bec0 Mon Sep 17 00:00:00 2001 From: "Stephen D. Huston" Date: Sat, 23 Jan 2010 00:16:34 +0000 Subject: Add SSL support for Windows client and broker per QPID-1403. Adds new AsynchIO::BufferBase::squish() method that does what used to be done by in-place memmove() calls so it can be reused easily. SSL support for Windows is in: - Client: qpid/client/windows/SslConnector.cpp qpid/client/TCPConnector.{h cpp} rearranged a bit to make pieces available to SslConnector - Broker: qpid/broker/windows/SslProtocolFactory.cpp - Common: qpid/sys/windows/SslAsynchIO contains all the Schannel stuff to negotiate a session, encrypt, and decrypt data. The SslAsynchIO acts as a shim between the layer above and the "regular" AsynchIO that actually handles read/write and completions. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@902318 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/sys/posix/AsynchIO.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'cpp/src/qpid/sys/posix') diff --git a/cpp/src/qpid/sys/posix/AsynchIO.cpp b/cpp/src/qpid/sys/posix/AsynchIO.cpp index d4c64dd814..fd7886145b 100644 --- a/cpp/src/qpid/sys/posix/AsynchIO.cpp +++ b/cpp/src/qpid/sys/posix/AsynchIO.cpp @@ -319,10 +319,7 @@ void AsynchIO::queueReadBuffer(BufferBase* buff) { void AsynchIO::unread(BufferBase* buff) { assert(buff); - if (buff->dataStart != 0) { - memmove(buff->bytes, buff->bytes+buff->dataStart, buff->dataCount); - buff->dataStart = 0; - } + buff->squish(); bool queueWasEmpty = bufferQueue.empty(); bufferQueue.push_front(buff); -- cgit v1.2.1