diff options
author | Michael Olbrich <m.olbrich@pengutronix.de> | 2013-02-13 08:00:46 +0100 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-02-13 08:45:13 -0500 |
commit | 1c00832624a146745c31ce5367330b1d2ca04088 (patch) | |
tree | d0b0c192cc0a7b923b6eb7100d3b5a88e6c4102a /src/shared/ratelimit.c | |
parent | a3aa7ee6ff7b3cc6e473367efd5fecf0f48f9635 (diff) |
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.
Diffstat (limited to 'src/shared/ratelimit.c')
-rw-r--r-- | src/shared/ratelimit.c | 2 |
1 files changed, 1 insertions, 1 deletions
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; |