Emiel Bruijntjes
6f81b0a097
when tcp connection is lost, the pending operations are now reported with an error
2018-11-11 23:46:58 +01:00
Emiel Bruijntjes
e83a07f871
renamed onClosed to onLost to prevent confusion between TcpHandler::onClosed() and ConnectionHandler::onClosed()
2018-11-08 09:58:36 +01:00
Emiel Bruijntjes
da6744bf4d
renamed ConnectionHandler::onConnectedO() to ConnectionHandler::onReady()
2018-11-08 08:34:58 +01:00
Emiel Bruijntjes
34f84e1ab7
handle unlikely error when ssl-handshake could not be started
2018-11-07 23:44:24 +01:00
Emiel Bruijntjes
06dc23190d
added ConnectionHandler::onProperties and TcpConnectionHandler::onProperties
2018-11-07 23:22:25 +01:00
Emiel Bruijntjes
428219ad83
simplified and improved the close procedure
2018-11-07 15:04:08 +01:00
Emiel Bruijntjes
64c876e65a
removed support for TcpConnection::flush() and removed internal TcpShutdown state
2018-11-06 18:11:27 +01:00
Emiel Bruijntjes
6ea2d8dffd
removed unneeded comment
2018-11-05 17:18:24 +01:00
Emiel Bruijntjes
9330231a69
fixed assigning the new state
2018-11-05 17:11:21 +01:00
Emiel Bruijntjes
54049f9e8e
improved the tcp handler, added more methods to monitor whether a connection is connected, logged on and in an error state
2018-11-05 16:49:55 +01:00
Emiel Bruijntjes
bb417e89c2
add support for ConnectionHandler::onAttached() and ConnectionHandler::onDetached()
2018-11-05 16:19:48 +01:00
Emiel Bruijntjes
359eec189f
work in progress, simplified the tcp and ssl states
2018-11-05 16:18:20 +01:00
Emiel Bruijntjes
e617161c8c
the state::abort() method is no longer needed
2018-11-05 15:49:22 +01:00
Emiel Bruijntjes
b81bc340b5
work in progress on refactored tcp handling, to solve various issues, like the one that lost connections do not trigger operations to fail
2018-11-04 23:34:31 +01:00
Emiel Bruijntjes
3f32e8773d
fixed typo and possible (but unlikely) crash in the tcp-resolver
2018-10-28 18:52:41 +01:00
Emiel Bruijntjes
62a4262a58
the TcpConnection::close() method now supports an "immediate" parameter to skip the official amqp handshake for closing down
2018-10-28 18:13:13 +01:00
Emiel Bruijntjes
8546f52cd0
added onAttached() and onDetached() to the TcpHandler interface
2018-10-28 10:22:01 +01:00
Emiel Bruijntjes
c52e8ff0b2
added ConnectionHandler::onAttached() and ConnectionHandler::onDetached() methods
2018-10-28 10:04:34 +01:00
Emiel Bruijntjes
11af8a7f6b
Merge pull request #218 from RZRCDR/fix_msvc_compiler_warnings
...
Fix msvc compiler warnings
2018-10-27 12:52:07 +02:00
Peter A. Bigot
adf4fb3bc1
TcpResolver: reduce risk of accessing destructed TcpConnection
...
Invoking TcpHandler::onError might result in the connection being
destroyed. Though the reference to it in TcpClosed() is likely benign,
it's safer to follow the standard practice of returning a nullptr to
indicate that the connection is known to be destroyed.
2018-06-24 10:31:21 -05:00
Emiel Bruijntjes
e665916b85
Merge branch 'master' of github.com:CopernicaMarketingSoftware/AMQP-CPP
2018-06-15 09:19:37 +02:00
Emiel Bruijntjes
80ce6327bb
fixed ssl handling: the sslconnected class incorrectly cached the readability/writability state of a socket, even after it already did a read- or write-operation, which could lead to the system getting to read mode when no data was expected
2018-06-15 09:19:27 +02:00
Emiel Bruijntjes
2430da76c3
refactored code
2018-06-10 20:46:11 +02:00
xqing2003
e40006058e
fix memory leak
...
fix memory leak when channel error
2018-06-06 22:11:55 +08:00
xqing2003
7737917886
solve memory leak
2018-06-01 23:30:30 +08:00
Emiel Bruijntjes
025fdb5530
Merge pull request #134 from mgibula/master
...
Add Publisher Confirms support
2018-05-14 22:42:56 +02:00
Marcin Gibula
cab0602dbf
Forgot to set ChannelImpl::_confirm
2018-05-14 22:36:49 +02:00
Marcin Gibula
578abbf973
Update src/CMakeLists.txt
2018-05-14 21:44:01 +02:00
Marcin Gibula
2aa55b83c7
Replace old API with DeferredConfirm class
2018-05-14 21:12:34 +02:00
Marcin Gibula
bf1caa1eae
Add DeferredConfirm class
2018-05-14 21:05:49 +02:00
Marcin Gibula
eeee1c3c5f
Rename setConfirmMode() to confirmSelect()
2018-05-14 12:59:20 +02:00
Marcin Gibula
e0b04ad7e0
Remove messageCounter()
2018-05-14 12:55:15 +02:00
Emiel Bruijntjes
5d69cc567c
more calls to openssl::err_clear_error() to prevent that the error queue contains errors that are not related to the operations that is being checked
2018-04-27 12:38:06 +02:00
Trevor Perrin
416e244b31
Clear SSL Error Queue
...
The OpenSSL documentation states that the error queue for the current
thread needs to be emptied prior to the next TLS/SSL I/O operation,
or the call to SSL_get_error() will not be reliable.
2018-04-26 15:50:32 -05:00
Dirkco du Plessis
1479922901
Fix MSVC compile warning C4800 for bitwise operation resulting in int to boolean assignment.
...
Fix MSVC compile warning C4244 possible loss of data. Possible data loss from uint64_t to uint32_t.
2018-04-22 15:53:52 +01:00
Marcin Gibula
bfd91b6ab5
Merge with upstream
2018-04-10 10:30:01 +02:00
Emiel Bruijntjes
69a201e741
optimizid dealing with ssl connections by not going back to the event loop that often, and prevented that object was staying in send state if it was endlessly sending data and not receiving anything, found this out when working on issue #207
2018-04-05 11:10:55 +02:00
Emiel Bruijntjes
b26058f3e2
renamed bytesQueued() to queued()
2018-04-01 22:34:15 +02:00
Mike Playle
8800d2917e
Add method to return the amount of queued outgoing data
2018-04-01 10:54:05 +01:00
tilsche
ec21091080
Make sure ssl files are included in the library and add missing libraries for linking the examples
2018-03-12 10:46:32 +01:00
Emiel Bruijntjes
f1c32242f7
Merge branch 'master' of github.com:CopernicaMarketingSoftware/AMQP-CPP
2018-03-10 14:56:18 +01:00
Emiel Bruijntjes
d2b2d5af14
shared-ptr has been turned into a unique-ptr for the tcp-state
2018-03-10 14:55:57 +01:00
Emiel Bruijntjes
d81565fe6a
fixed that stream operator of address wrote the port number when the default amqps port was used
2018-03-10 10:31:40 +01:00
Emiel Bruijntjes
367de51d77
added method to intercept tls handshakes, and to verify certificates
2018-03-10 00:59:14 +01:00
Emiel Bruijntjes
4c2b8ff68e
added ability to set the handle to the openssl library (so that programs that load openssl via dlopen() can still use amqp-cpp)
2018-03-09 15:08:52 +01:00
Emiel Bruijntjes
28b6c903e1
finished implementing amqps:// support
2018-03-09 13:55:49 +01:00
Emiel Bruijntjes
c26005ddfb
work in progress on setting up tls connections to rabbitmq
2018-03-08 14:00:44 +01:00
Emiel Bruijntjes
e39ca5b012
ssl connection fixes
2018-03-08 13:36:56 +01:00
Emiel Bruijntjes
872d4e9a11
implemented flushing for ssl connections
2018-03-08 13:09:56 +01:00
Emiel Bruijntjes
bc4db8d8fe
elegant shutdown for ssl connections
2018-03-08 12:11:45 +01:00