summaryrefslogtreecommitdiff
path: root/librabbitmq/amqp_tcp_socket.c
diff options
context:
space:
mode:
authorAlan Antonuk <alan.antonuk@gmail.com>2015-10-20 23:44:00 -0700
committerAlan Antonuk <alan.antonuk@gmail.com>2015-10-22 20:30:17 -0700
commit26a53d29bd32809e07687ef6515d48ef7d07f0b8 (patch)
tree0a443fdda82c7411785c1dc3e7fe93475273c11b /librabbitmq/amqp_tcp_socket.c
parentbbe5ddbdd6f18fdde30642cbdff7b935016d5bec (diff)
downloadrabbitmq-c-26a53d29bd32809e07687ef6515d48ef7d07f0b8.tar.gz
Lib: don't try hard when closing SSL sockets
If a heartbeat timeout occurs skip calling SSL_shutdown as it involves doing a send() which will likely hang. Additionally don't wait for a response when doing an SSL_shutdown, as the underlying transport will not be reused. Fixes #313
Diffstat (limited to 'librabbitmq/amqp_tcp_socket.c')
-rw-r--r--librabbitmq/amqp_tcp_socket.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/librabbitmq/amqp_tcp_socket.c b/librabbitmq/amqp_tcp_socket.c
index c15e87c..71de2ef 100644
--- a/librabbitmq/amqp_tcp_socket.c
+++ b/librabbitmq/amqp_tcp_socket.c
@@ -180,7 +180,7 @@ amqp_tcp_socket_open(void *base, const char *host, int port, struct timeval *tim
}
static int
-amqp_tcp_socket_close(void *base)
+amqp_tcp_socket_close(void *base, AMQP_UNUSED amqp_socket_close_enum force)
{
struct amqp_tcp_socket_t *self = (struct amqp_tcp_socket_t *)base;
if (-1 == self->sockfd) {
@@ -208,7 +208,7 @@ amqp_tcp_socket_delete(void *base)
struct amqp_tcp_socket_t *self = (struct amqp_tcp_socket_t *)base;
if (self) {
- amqp_tcp_socket_close(self);
+ amqp_tcp_socket_close(self, AMQP_SC_NONE);
free(self);
}
}