From b0785d12513c45ab4d061169dee882f6e7779d50 Mon Sep 17 00:00:00 2001 From: Libor Peltan <libor.peltan@nic.cz> Date: Thu, 26 Jan 2017 13:06:54 +0100 Subject: [PATCH] events/refresh: minimum timeout for next refresh --- src/knot/events/handlers/refresh.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/knot/events/handlers/refresh.c b/src/knot/events/handlers/refresh.c index 1b1d15e88a..b6befba6eb 100644 --- a/src/knot/events/handlers/refresh.c +++ b/src/knot/events/handlers/refresh.c @@ -78,6 +78,7 @@ #define BOOTSTRAP_MAXTIME (24*60*60) #define BOOTSTRAP_JITTER (30) +#define NEXT_REFRESH_MIN (2) enum state { REFRESH_STATE_INVALID = 0, @@ -917,6 +918,11 @@ int event_refresh(conf_t *conf, zone_t *zone) zone->timers.next_refresh = now + next; } + /* Security: avoid flooding master. */ + if (zone->timers.next_refresh < now + NEXT_REFRESH_MIN) { + zone->timers.next_refresh = now + NEXT_REFRESH_MIN; + } + /* Rechedule events. */ replan_from_timers(conf, zone); if (updated) { -- GitLab