- using enum to specify command.
BlockingTCPAcceptor.cpp:
- added 'destroy()' to dtor
- added parentheses to expressions
blockingTCPCinnector.cpp:
- fixed log message
blockingTCPTransport.cpp:
- added _socketAddress allocation
- fixed waiting for timeout in 'waitUntilVerified'
- fixed how many bytes are copied from the buffer
responseHandlers.cpp:
- added 'ConnectionValidationHandler' implementation
- added 'ConnectionValidationHandler' to 'ServerResponseHandler'
responseHandlers.h:
- added 'ConnectionValidationHandler' declaration
inetAddressUtil.cpp:
- fixed all issues with sockaddr_in byte-order
- removed function 'processAddressForList', using EPICSv3 'aToIPAddr' instead
inetAddressUtilsTest.cpp:
- fixed the tests in accordance with the correct function implementation
testBlockingUDPClnt.cpp:
- deleting transport at the end of the test
testBlockingTCPSrv.cpp, testBlockingTCPClnt.cpp:
- added tests (work in progress).
Makefile:
- added blockingTCP tests
The acceptor now stores all the objects in a set, and registers a callback with the client, to be notified when the connection is closed. On notification the client is them removed from the set and the memory is released.
When the acceptor is destroyed, it also closes and deleted all the connected clients.