=== modified file 'TODO' --- TODO 2011-11-29 04:03:46 +0000 +++ TODO 2011-11-29 19:25:06 +0000 @@ -41,6 +41,7 @@ * mandos (server) ** TODO [#B] Log level :BUGS: +** TODO [#A] Save state to new file and move instead of overwrite ** TODO [#C] config for TXT record ** TODO Log level option === modified file 'mandos' --- mandos 2011-11-27 20:06:35 +0000 +++ mandos 2011-11-29 19:25:06 +0000 @@ -576,7 +576,7 @@ self.checker_callback_tag = None self.checker = None if os.WIFEXITED(condition): - self.last_checker_status = os.WEXITSTATUS(condition) + self.last_checker_status = os.WEXITSTATUS(condition) if self.last_checker_status == 0: logger.info("Checker for %(name)s succeeded", vars(self)) @@ -1280,7 +1280,7 @@ def Host_dbus_property(self, value=None): if value is None: # get return dbus.String(self.host) - self.host = value + self.host = unicode(value) # Created - property @dbus_service_property(_interface, signature="s", access="read") @@ -1380,7 +1380,7 @@ def Checker_dbus_property(self, value=None): if value is None: # get return dbus.String(self.checker_command) - self.checker_command = value + self.checker_command = unicode(value) # CheckerRunning - property @dbus_service_property(_interface, signature="b", @@ -2244,10 +2244,10 @@ # enabled if its last checker was sucessful. Clients # whose checker failed before we stored its state is # assumed to have failed all checkers during downtime. - if client["enabled"] and client["last_checked_ok"]: - if ((datetime.datetime.utcnow() - - client["last_checked_ok"]) - > client["interval"]): + if client["enabled"]: + if client["expires"] <= (datetime.datetime + .utcnow()): + # Client has expired if client["last_checker_status"] != 0: client["enabled"] = False else: