aboutsummaryrefslogtreecommitdiff
path: root/rpkid/rpki/rpki_engine.py
diff options
context:
space:
mode:
Diffstat (limited to 'rpkid/rpki/rpki_engine.py')
-rw-r--r--rpkid/rpki/rpki_engine.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/rpkid/rpki/rpki_engine.py b/rpkid/rpki/rpki_engine.py
index b81540d9..147ca8cc 100644
--- a/rpkid/rpki/rpki_engine.py
+++ b/rpkid/rpki/rpki_engine.py
@@ -197,6 +197,14 @@ class rpkid_context(object):
rpki.log.traceback()
cb(400, "Could not process PDU: %s" % data)
+ def checkpoint(self):
+ """
+ Record that we were still alive when we got here, by resetting
+ keepalive timer.
+ """
+ self.cron_timeout = rpki.sundial.now() + self.cron_keepalive
+ rpki.log.debug("Checkpoint: keepalive timer reset to %s" % self.cron_timeout)
+
def cron(self, cb = None):
"""
Periodic tasks.
@@ -223,9 +231,10 @@ class rpkid_context(object):
rpki.log.warn("cron already running, keepalive will expire at %s" % self.cron_timeout)
return
- self.cron_timeout = now + self.cron_keepalive
+ self.checkpoint()
def loop(iterator, s):
+ self.checkpoint()
s.cron(iterator)
def done():