diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/limits/RateLimiterConfig.java b/service/src/main/java/org/whispersystems/textsecuregcm/limits/RateLimiterConfig.java index a469a3144..9530eccb5 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/limits/RateLimiterConfig.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/limits/RateLimiterConfig.java @@ -6,6 +6,11 @@ package org.whispersystems.textsecuregcm.limits; public record RateLimiterConfig(int bucketSize, double leakRatePerMinute) { + public RateLimiterConfig { + if (leakRatePerMinute <= 0) { + throw new IllegalArgumentException("leakRatePerMinute cannot be less than or equal to zero"); + } + } public double leakRatePerMillis() { return leakRatePerMinute / (60.0 * 1000.0); diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/limits/RateLimiters.java b/service/src/main/java/org/whispersystems/textsecuregcm/limits/RateLimiters.java index 6d6860e30..3ad20b4d7 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/limits/RateLimiters.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/limits/RateLimiters.java @@ -74,7 +74,7 @@ public class RateLimiters extends BaseRateLimiters { PUSH_CHALLENGE_SUCCESS("pushChallengeSuccess", true, new RateLimiterConfig(2, 2.0 / (60 * 24))), - CREATE_CALL_LINK("createCallLink", false, new RateLimiterConfig(100, 100 / (60 * 24))); + CREATE_CALL_LINK("createCallLink", false, new RateLimiterConfig(100, 100.0 / (60 * 24))); ; private final String id;