aboutsummaryrefslogtreecommitdiff
path: root/lib/libeclat.h
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org>2018-03-14 17:22:18 +0200
committerSergey Poznyakoff <gray@gnu.org>2018-03-14 23:21:26 +0200
commit649a04b9deec5d111e735bc47c37adca7e76f39e (patch)
treec651192f145575fc7a49d591738f9cfc6e80e6d8 /lib/libeclat.h
parentae194ce922bff039e9003f1e84d44132aab63c3e (diff)
downloadeclat-649a04b9deec5d111e735bc47c37adca7e76f39e.tar.gz
eclat-649a04b9deec5d111e735bc47c37adca7e76f39e.tar.bz2
Implement exponential backoff with jitter to handle RequestLimitExceeded
* src/eclat.h (eclat_command_env) <curl>: Remove. <xmltree>: New field. * src/util.c (translate_ids): Close the map when no longer needed (eclat_send_request): Implement exponential backoff. * src/ec2map.c: Reflect the above changes. * src/eclat.c: Likewise. * lib/libeclat.h (eclat_request_dup): New proto. * lib/reqcreat.c (eclat_request_dup): New function. * src/config.c: New configuration statements: max-retry-interval and retry-timeout.
Diffstat (limited to 'lib/libeclat.h')
-rw-r--r--lib/libeclat.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/libeclat.h b/lib/libeclat.h
index b865e00..6f1acf6 100644
--- a/lib/libeclat.h
+++ b/lib/libeclat.h
@@ -1,5 +1,5 @@
/* This file is part of Eclat.
- Copyright (C) 2012-2015 Sergey Poznyakoff.
+ Copyright (C) 2012-2018 Sergey Poznyakoff.
Eclat is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -104,6 +104,7 @@ struct ec2_request {
struct ec2_request *eclat_request_create(int flags, const char *endpoint,
const char *uri, char const *region,
char const *access_key, char const *token);
+struct ec2_request *eclat_request_dup(struct ec2_request const *src);
void eclat_request_free(struct ec2_request *);
void eclat_request_add_param0(struct ec2_request *req, const char *name,
const char *value, int encoded);

Return to:

Send suggestions and report system problems to the System administrator.