diff --git a/src/scitokens_internal.cpp b/src/scitokens_internal.cpp index b25608b..c932709 100644 --- a/src/scitokens_internal.cpp +++ b/src/scitokens_internal.cpp @@ -584,7 +584,9 @@ Validator::get_public_key_pem(const std::string &issuer, const std::string &kid, get_public_keys_from_web(issuer, SimpleCurlGet::default_timeout, keys, next_update, expires); store_public_keys(issuer, keys, next_update, expires); } catch (std::runtime_error &) { - // ignore the exception: we have a valid set of keys already/ + // ignore the exception: we have a valid set of keys already. However, we don't want to continuously + // hammer the upstream server which is not currently working ... move forward the next_update by 5 minutes. + store_public_keys(issuer, keys, now + 300, expires); } } } else {