-/*-*- Mode: C; c-basic-offset: 8 -*-*/
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
/***
This file is part of systemd.
* <hidave.darkstar@gmail.com>, which is licensed GPLv2. */
bool ratelimit_test(RateLimit *r) {
- usec_t timestamp;
+ usec_t ts;
- timestamp = now(CLOCK_MONOTONIC);
+ ts = now(CLOCK_MONOTONIC);
assert(r);
assert(r->interval > 0);
assert(r->burst > 0);
if (r->begin <= 0 ||
- r->begin + r->interval < timestamp) {
+ r->begin + r->interval < ts) {
+ r->begin = ts;
- if (r->n_missed > 0)
- log_warning("%u events suppressed", r->n_missed);
-
- r->begin = timestamp;
-
- /* Reset counters */
- r->n_printed = 0;
- r->n_missed = 0;
+ /* Reset counter */
+ r->num = 0;
goto good;
}
- if (r->n_printed <= r->burst)
+ if (r->num <= r->burst)
goto good;
- r->n_missed++;
return false;
good:
- r->n_printed++;
+ r->num++;
return true;
}