def handle_update(self, db, ns):
if ns.cron and db:
- now = datetime.datetime.utcnow()
-
- # Parse the database timestamp
- t = datetime.datetime.utcfromtimestamp(db.created_at)
+ now = time.time()
if ns.cron == "daily":
delta = datetime.timedelta(days=1)
elif ns.cron == "monthly":
delta = datetime.timedelta(days=30)
+ delta = delta.total_seconds()
+
# Check if the database has recently been updated
- if t >= (now - delta):
+ if db.created_at >= (now - delta):
log.info(
- _("The database has been updated recently (%s)") % \
- format_timedelta(now - t),
+ _("The database has been updated recently"),
)
return 3
# Fetch the timestamp we need from DNS
t = location.discover_latest_version()
- # Parse timestamp into datetime format
- timestamp = datetime.datetime.utcfromtimestamp(t) if t else None
-
# Check the version of the local database
- if db and timestamp and db.created_at >= timestamp.timestamp():
+ if db and t and db.created_at >= t:
log.info("Already on the latest version")
return
return 0
- def handle_verify(self, ns):
- try:
- db = location.Database(ns.database)
- except FileNotFoundError as e:
- log.error("%s: %s" % (ns.database, e))
- return 127
-
+ def handle_verify(self, db, ns):
# Verify the database
with open(ns.public_key, "r") as f:
if not db.verify(f):