From 1c00832624a146745c31ce5367330b1d2ca04088 Mon Sep 17 00:00:00 2001 From: Michael Olbrich Date: Wed, 13 Feb 2013 08:00:46 +0100 Subject: ratelimit: fix off-by-one The current code might make sense during startup for service restart limiting: With burst=1 after starting num is 1, so the next ('first') restart is still accepted ( 1 <= 1). However, once interval has expired, num is 1 after the first restart, so the second restart is also accepted. This change is also useful in combination with watchdogs: With burst=1 and a very large interval the system can be restarted on the first failure. --- src/shared/ratelimit.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/shared/ratelimit.c b/src/shared/ratelimit.c index 1054d52f97..01b62b7b38 100644 --- a/src/shared/ratelimit.c +++ b/src/shared/ratelimit.c @@ -46,7 +46,7 @@ bool ratelimit_test(RateLimit *r) { goto good; } - if (r->num <= r->burst) + if (r->num < r->burst) goto good; return false; -- cgit v1.2.3-54-g00ecf