/* SPDX-License-Identifier: LGPL-2.1+ */ #pragma once #include #include "time-util.h" #include "util.h" typedef struct RateLimit { usec_t interval; /* Keep those two fields first so they can be initialized easily: */ unsigned burst; /* RateLimit rl = { INTERVAL, BURST }; */ unsigned num; usec_t begin; } RateLimit; static inline void ratelimit_reset(RateLimit *rl) { rl->num = rl->begin = 0; } bool ratelimit_below(RateLimit *r);