diff options
author | Alan Antonuk <alan.antonuk@gmail.com> | 2015-10-20 23:44:00 -0700 |
---|---|---|
committer | Alan Antonuk <alan.antonuk@gmail.com> | 2015-10-22 20:30:17 -0700 |
commit | 26a53d29bd32809e07687ef6515d48ef7d07f0b8 (patch) | |
tree | 0a443fdda82c7411785c1dc3e7fe93475273c11b /librabbitmq/amqp_tcp_socket.c | |
parent | bbe5ddbdd6f18fdde30642cbdff7b935016d5bec (diff) | |
download | rabbitmq-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.c | 4 |
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); } } |