]> git.ipfire.org Git - pakfire.git/commitdiff
xfer: Try again for temporary issues on API calls
authorMichael Tremer <michael.tremer@ipfire.org>
Wed, 1 Nov 2023 19:10:54 +0000 (19:10 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Wed, 1 Nov 2023 19:10:54 +0000 (19:10 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/xfer.c

index 0f849380a7906007d5d9c922efa2fde04b964dde..c6822b90cb9f84bdf70ddbcfe6ac8af7c3a222da 100644 (file)
@@ -1393,7 +1393,12 @@ pakfire_xfer_error_code_t pakfire_xfer_run_api_request(
        for (;;) {
                r = pakfire_xfer_run_api_request_once(xfer, response);
                switch (r) {
-                       // XXX need to catch errors and act accordingly
+                       // Try again after five seconds for recoverable errors
+                       case PAKFIRE_XFER_DNS_ERROR:
+                       case PAKFIRE_XFER_TRANSPORT_ERROR:
+                       case PAKFIRE_XFER_TIMEOUT:
+                               usleep(5000000);
+                               break;
 
                        default:
                                return r;