diff options
author | David Wragg <david@rabbitmq.com> | 2010-07-26 03:09:38 +0100 |
---|---|---|
committer | David Wragg <david@rabbitmq.com> | 2010-07-26 03:09:38 +0100 |
commit | 7290a2692cd0f597573de51599c9b50088c02f90 (patch) | |
tree | 39866d75e726fe2817030e4205f68831b63d3551 | |
parent | 6cc7fe86a01628483646a0b1eca423a9d8a34025 (diff) | |
download | rabbitmq-c-github-ask-7290a2692cd0f597573de51599c9b50088c02f90.tar.gz |
Fold amqp_end_connection socket closing into amqp_destroy_connection
-rw-r--r-- | examples/amqp_bind.c | 2 | ||||
-rw-r--r-- | examples/amqp_consumer.c | 2 | ||||
-rw-r--r-- | examples/amqp_exchange_declare.c | 2 | ||||
-rw-r--r-- | examples/amqp_listen.c | 2 | ||||
-rw-r--r-- | examples/amqp_listenq.c | 2 | ||||
-rw-r--r-- | examples/amqp_producer.c | 2 | ||||
-rw-r--r-- | examples/amqp_sendstring.c | 2 | ||||
-rw-r--r-- | examples/amqp_unbind.c | 2 | ||||
-rw-r--r-- | librabbitmq/amqp.h | 5 | ||||
-rw-r--r-- | librabbitmq/amqp_connection.c | 12 | ||||
-rw-r--r-- | tools/common.c | 2 |
11 files changed, 16 insertions, 19 deletions
diff --git a/examples/amqp_bind.c b/examples/amqp_bind.c index cf7c377..1f183a5 100644 --- a/examples/amqp_bind.c +++ b/examples/amqp_bind.c @@ -99,6 +99,6 @@ int main(int argc, char const * const *argv) { die_on_amqp_error(amqp_channel_close(conn, 1, AMQP_REPLY_SUCCESS), "Closing channel"); die_on_amqp_error(amqp_connection_close(conn, AMQP_REPLY_SUCCESS), "Closing connection"); - die_on_error(amqp_end_connection(conn), "Ending connection"); + die_on_error(amqp_destroy_connection(conn), "Ending connection"); return 0; } diff --git a/examples/amqp_consumer.c b/examples/amqp_consumer.c index 5dfbb33..6b24d8c 100644 --- a/examples/amqp_consumer.c +++ b/examples/amqp_consumer.c @@ -184,7 +184,7 @@ int main(int argc, char const * const *argv) { die_on_amqp_error(amqp_channel_close(conn, 1, AMQP_REPLY_SUCCESS), "Closing channel"); die_on_amqp_error(amqp_connection_close(conn, AMQP_REPLY_SUCCESS), "Closing connection"); - die_on_error(amqp_end_connection(conn), "Ending connection"); + die_on_error(amqp_destroy_connection(conn), "Ending connection"); return 0; } diff --git a/examples/amqp_exchange_declare.c b/examples/amqp_exchange_declare.c index 32e71b0..27bff1a 100644 --- a/examples/amqp_exchange_declare.c +++ b/examples/amqp_exchange_declare.c @@ -94,6 +94,6 @@ int main(int argc, char const * const *argv) { die_on_amqp_error(amqp_channel_close(conn, 1, AMQP_REPLY_SUCCESS), "Closing channel"); die_on_amqp_error(amqp_connection_close(conn, AMQP_REPLY_SUCCESS), "Closing connection"); - die_on_error(amqp_end_connection(conn), "Ending connection"); + die_on_error(amqp_destroy_connection(conn), "Ending connection"); return 0; } diff --git a/examples/amqp_listen.c b/examples/amqp_listen.c index 412dcd5..6025e5c 100644 --- a/examples/amqp_listen.c +++ b/examples/amqp_listen.c @@ -187,7 +187,7 @@ int main(int argc, char const * const *argv) { die_on_amqp_error(amqp_channel_close(conn, 1, AMQP_REPLY_SUCCESS), "Closing channel"); die_on_amqp_error(amqp_connection_close(conn, AMQP_REPLY_SUCCESS), "Closing connection"); - die_on_error(amqp_end_connection(conn), "Ending connection"); + die_on_error(amqp_destroy_connection(conn), "Ending connection"); return 0; } diff --git a/examples/amqp_listenq.c b/examples/amqp_listenq.c index 1fc7db0..94d89eb 100644 --- a/examples/amqp_listenq.c +++ b/examples/amqp_listenq.c @@ -171,7 +171,7 @@ int main(int argc, char const * const *argv) { die_on_amqp_error(amqp_channel_close(conn, 1, AMQP_REPLY_SUCCESS), "Closing channel"); die_on_amqp_error(amqp_connection_close(conn, AMQP_REPLY_SUCCESS), "Closing connection"); - die_on_error(amqp_end_connection(conn), "Ending connection"); + die_on_error(amqp_destroy_connection(conn), "Ending connection"); return 0; } diff --git a/examples/amqp_producer.c b/examples/amqp_producer.c index 61cc925..b83e030 100644 --- a/examples/amqp_producer.c +++ b/examples/amqp_producer.c @@ -151,6 +151,6 @@ int main(int argc, char const * const *argv) { die_on_amqp_error(amqp_channel_close(conn, 1, AMQP_REPLY_SUCCESS), "Closing channel"); die_on_amqp_error(amqp_connection_close(conn, AMQP_REPLY_SUCCESS), "Closing connection"); - die_on_error(amqp_end_connection(conn), "Ending connection"); + die_on_error(amqp_destroy_connection(conn), "Ending connection"); return 0; } diff --git a/examples/amqp_sendstring.c b/examples/amqp_sendstring.c index e669505..ccd3866 100644 --- a/examples/amqp_sendstring.c +++ b/examples/amqp_sendstring.c @@ -108,6 +108,6 @@ int main(int argc, char const * const *argv) { die_on_amqp_error(amqp_channel_close(conn, 1, AMQP_REPLY_SUCCESS), "Closing channel"); die_on_amqp_error(amqp_connection_close(conn, AMQP_REPLY_SUCCESS), "Closing connection"); - die_on_error(amqp_end_connection(conn), "Ending connection"); + die_on_error(amqp_destroy_connection(conn), "Ending connection"); return 0; } diff --git a/examples/amqp_unbind.c b/examples/amqp_unbind.c index bc92efe..4b92e12 100644 --- a/examples/amqp_unbind.c +++ b/examples/amqp_unbind.c @@ -99,6 +99,6 @@ int main(int argc, char const * const *argv) { die_on_amqp_error(amqp_channel_close(conn, 1, AMQP_REPLY_SUCCESS), "Closing channel"); die_on_amqp_error(amqp_connection_close(conn, AMQP_REPLY_SUCCESS), "Closing connection"); - die_on_error(amqp_end_connection(conn), "Ending connection"); + die_on_error(amqp_destroy_connection(conn), "Ending connection"); return 0; } diff --git a/librabbitmq/amqp.h b/librabbitmq/amqp.h index fa76637..58d042c 100644 --- a/librabbitmq/amqp.h +++ b/librabbitmq/amqp.h @@ -308,9 +308,8 @@ extern int amqp_tune_connection(amqp_connection_state_t state, int channel_max, int frame_max, int heartbeat); -int amqp_get_channel_max(amqp_connection_state_t state); -extern void amqp_destroy_connection(amqp_connection_state_t state); -extern int amqp_end_connection(amqp_connection_state_t state); +extern int amqp_get_channel_max(amqp_connection_state_t state); +extern int amqp_destroy_connection(amqp_connection_state_t state); extern int amqp_handle_input(amqp_connection_state_t state, amqp_bytes_t received_data, diff --git a/librabbitmq/amqp_connection.c b/librabbitmq/amqp_connection.c index 5b5e813..3d95e98 100644 --- a/librabbitmq/amqp_connection.c +++ b/librabbitmq/amqp_connection.c @@ -158,22 +158,20 @@ int amqp_get_channel_max(amqp_connection_state_t state) { return state->channel_max; } -void amqp_destroy_connection(amqp_connection_state_t state) { +int amqp_destroy_connection(amqp_connection_state_t state) { + int s = state->sockfd; + empty_amqp_pool(&state->frame_pool); empty_amqp_pool(&state->decoding_pool); free(state->outbound_buffer.bytes); free(state->sock_inbound_buffer.bytes); free(state); -} -int amqp_end_connection(amqp_connection_state_t state) { - int s = state->sockfd; - amqp_destroy_connection(state); - if (amqp_socket_close(s) < 0) + if (s >= 0 && amqp_socket_close(s) < 0) return -amqp_socket_error(); else return 0; -} +} static void return_to_idle(amqp_connection_state_t state) { state->inbound_buffer.bytes = NULL; diff --git a/tools/common.c b/tools/common.c index 39099c1..1d8fbd8 100644 --- a/tools/common.c +++ b/tools/common.c @@ -236,7 +236,7 @@ void close_connection(amqp_connection_state_t conn) die_rpc(amqp_connection_close(conn, AMQP_REPLY_SUCCESS), "closing connection"); - res = amqp_end_connection(conn); + res = amqp_destroy_connection(conn); die_amqp_error(-res, "closing connection"); } |