throw error;
}
try {
- if (limit.isLimitExceeded(Integer.toString(ctx.getActor().getId()))) {
+ if (RATE_LIMIT.isLimitExceeded(Integer.toString(ctx.getActor().getId()))) {
throw new GigiApiException("Rate Limit Exceeded");
}
return new Certificate(ctx.getTarget(), ctx.getActor(), subject, selectedDigest, //
}
// 100 per 10 minutes
- private static final RateLimit limit = new RateLimit(100, 10 * 60 * 1000);
+ public static final RateLimit RATE_LIMIT = new RateLimit(100, 10 * 60 * 1000);
private String verifyName(GigiApiException error, PropertyTemplate nameTemp, PropertyTemplate wotUserTemp, String verifiedCN) {
// real names,
import org.cacert.gigi.localisation.Language;
import org.cacert.gigi.output.template.Template;
import org.cacert.gigi.pages.Page;
+import org.cacert.gigi.pages.account.certs.CertificateRequest;
+import org.cacert.gigi.pages.main.RegisterPage;
import org.cacert.gigi.util.AuthorizationContext;
import org.cacert.gigi.util.ServerConstants;
import org.kamranzafar.jtar.TarEntry;
@Override
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
ObjectCache.clearAllCaches();
+ RegisterPage.RATE_LIMIT.bypass();
+ CertificateRequest.RATE_LIMIT.bypass();
resp.getWriter().println("All caches cleared.");
System.out.println("Caches cleared.");