faucet: Use checked math in request limiter

This commit is contained in:
Trent Nelson 2020-10-06 09:56:34 -06:00 committed by Trent Nelson
parent 5ae704d560
commit 87de82ac94
1 changed files with 5 additions and 2 deletions

View File

@ -87,7 +87,10 @@ impl Faucet {
}
pub fn check_time_request_limit(&mut self, request_amount: u64) -> bool {
(self.request_current + request_amount) <= self.per_time_cap
self.request_current
.checked_add(request_amount)
.map(|s| s <= self.per_time_cap)
.unwrap_or(false)
}
pub fn clear_request_count(&mut self) {
@ -122,7 +125,7 @@ impl Faucet {
}
}
if self.check_time_request_limit(lamports) {
self.request_current += lamports;
self.request_current = self.request_current.saturating_add(lamports);
datapoint_info!(
"faucet-airdrop",
("request_amount", lamports, i64),