----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/6839/ -----------------------------------------------------------
Review request for qpid, Gordon Sim and Steve Huston. Description ------- This is a rework of the qpid C++ code socket level code to remove much (but not yet all) of the duplicated code between different "transports". Along the way it allows the Unix SSL code to use IPv6. The change is quite large if looked at as a single change; A progression of smaller refactorings to the same effect can be seen in my github repo - this may be easier to digest. https://github.com/astitcher/qpid/commits/ssl-converge/ This is not exactly the end of the road for changes to this code, but IMO it is an improvement so should go in even without being perfect. [Specifically there is still work to do to unify the TCPIOPlugin/SSLPlugin code and TCPConnector/SSLConnector code where there is still a lot of duplication.] This addresses bugs QPID-3883 and QPID-4272. https://issues.apache.org/jira/browse/QPID-3883 https://issues.apache.org/jira/browse/QPID-4272 Diffs ----- /trunk/qpid/cpp/include/qpid/sys/IOHandle.h 1378663 /trunk/qpid/cpp/include/qpid/sys/posix/PrivatePosix.h 1378663 /trunk/qpid/cpp/src/CMakeLists.txt 1378663 /trunk/qpid/cpp/src/Makefile.am 1378663 /trunk/qpid/cpp/src/qpid/broker/windows/SslProtocolFactory.cpp 1378663 /trunk/qpid/cpp/src/qpid/client/SslConnector.cpp 1378663 /trunk/qpid/cpp/src/qpid/client/TCPConnector.h 1378663 /trunk/qpid/cpp/src/qpid/client/TCPConnector.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/AsynchIO.h 1378663 /trunk/qpid/cpp/src/qpid/sys/AsynchIOHandler.h 1378663 /trunk/qpid/cpp/src/qpid/sys/AsynchIOHandler.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/SecuritySettings.h 1378663 /trunk/qpid/cpp/src/qpid/sys/Socket.h 1378663 /trunk/qpid/cpp/src/qpid/sys/SocketAddress.h 1378663 /trunk/qpid/cpp/src/qpid/sys/SslPlugin.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/TCPIOPlugin.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/epoll/EpollPoller.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/posix/AsynchIO.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/posix/BSDSocket.h PRE-CREATION /trunk/qpid/cpp/src/qpid/sys/posix/BSDSocket.cpp PRE-CREATION /trunk/qpid/cpp/src/qpid/sys/posix/IOHandle.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/posix/PollableCondition.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/posix/PosixPoller.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/posix/Socket.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/posix/SocketAddress.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/rdma/rdma_wrap.h 1378663 /trunk/qpid/cpp/src/qpid/sys/rdma/rdma_wrap.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/ssl/SslHandler.h 1378663 /trunk/qpid/cpp/src/qpid/sys/ssl/SslHandler.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/ssl/SslIo.h 1378663 /trunk/qpid/cpp/src/qpid/sys/ssl/SslIo.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/ssl/SslSocket.h 1378663 /trunk/qpid/cpp/src/qpid/sys/ssl/SslSocket.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/windows/AsynchIO.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/windows/IOHandle.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/windows/IoHandlePrivate.h 1378663 /trunk/qpid/cpp/src/qpid/sys/windows/IocpPoller.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/windows/PollableCondition.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/windows/Socket.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/windows/SslAsynchIO.h 1378663 /trunk/qpid/cpp/src/qpid/sys/windows/SslAsynchIO.cpp 1378663 /trunk/qpid/cpp/src/qpid/sys/windows/WinSocket.h PRE-CREATION /trunk/qpid/cpp/src/qpid/sys/windows/WinSocket.cpp PRE-CREATION /trunk/qpid/cpp/src/ssl.cmake 1378663 /trunk/qpid/cpp/src/ssl.mk 1378663 /trunk/qpid/cpp/src/tests/DispatcherTest.cpp 1378663 /trunk/qpid/cpp/src/tests/PollerTest.cpp 1378663 Diff: https://reviews.apache.org/r/6839/diff/ Testing ------- Passes regular "make check", no specific ssl over IPv6 test added to code base yet, though modifying the existing ssl_test to only use IPv6 works. Thanks, Andrew Stitcher
