summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Antonuk <alan.antonuk@gmail.com>2013-06-10 11:37:50 -0700
committerAlan Antonuk <alan.antonuk@gmail.com>2013-06-13 15:48:39 -0700
commit0ae534a671804d5a7b68fa0825494000f31b1536 (patch)
tree33c81b4f6be372c329e7b40e7f016d03c78580a3
parentf027518d5d4cd5ba231fd45d3ae40679f17752f6 (diff)
downloadrabbitmq-c-github-ask-0ae534a671804d5a7b68fa0825494000f31b1536.tar.gz
Correctly handle 0 ret val from SSL_read/write
A 0 return value from SSL_read/SSL_write means the (SSL) connection has been terminated.
-rw-r--r--librabbitmq/amqp_openssl.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/librabbitmq/amqp_openssl.c b/librabbitmq/amqp_openssl.c
index 0b0655e..b210e31 100644
--- a/librabbitmq/amqp_openssl.c
+++ b/librabbitmq/amqp_openssl.c
@@ -79,7 +79,7 @@ amqp_ssl_socket_send(void *base,
ERR_clear_error();
self->last_error = 0;
sent = SSL_write(self->ssl, buf, len);
- if (0 > sent) {
+ if (0 >= sent) {
self->last_error = AMQP_STATUS_SSL_ERROR;
switch (SSL_get_error(self->ssl, sent)) {
case SSL_ERROR_NONE:
@@ -139,7 +139,7 @@ amqp_ssl_socket_recv(void *base,
ERR_clear_error();
self->last_error = 0;
received = SSL_read(self->ssl, buf, len);
- if (0 > received) {
+ if (0 >= received) {
self->last_error = AMQP_STATUS_SSL_ERROR;
switch(SSL_get_error(self->ssl, received)) {
case SSL_ERROR_WANT_READ: