summaryrefslogtreecommitdiff
path: root/librabbitmq/amqp_api.c
diff options
context:
space:
mode:
Diffstat (limited to 'librabbitmq/amqp_api.c')
-rw-r--r--librabbitmq/amqp_api.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/librabbitmq/amqp_api.c b/librabbitmq/amqp_api.c
index 72bd97a..cafc2f7 100644
--- a/librabbitmq/amqp_api.c
+++ b/librabbitmq/amqp_api.c
@@ -373,3 +373,21 @@ int amqp_set_handshake_timeout(amqp_connection_state_t state,
return AMQP_STATUS_OK;
}
+
+struct timeval * amqp_get_rpc_timeout(amqp_connection_state_t state) {
+ return state->rpc_timeout;
+}
+
+int amqp_set_rpc_timeout(amqp_connection_state_t state,
+ struct timeval *timeout) {
+ if (timeout) {
+ if (timeout->tv_sec < 0 || timeout->tv_usec < 0) {
+ return AMQP_STATUS_INVALID_PARAMETER;
+ }
+ state->rpc_timeout = &state->internal_rpc_timeout;
+ *state->rpc_timeout = *timeout;
+ } else {
+ state->rpc_timeout = NULL;
+ }
+ return AMQP_STATUS_OK;
+}