diff --git a/supervisor/ingress.py b/supervisor/ingress.py index 5ff17eadb..3f1220f29 100644 --- a/supervisor/ingress.py +++ b/supervisor/ingress.py @@ -72,7 +72,13 @@ class Ingress(JsonConfig, CoreSysAttributes): sessions = {} for session, valid in self.sessions.items(): - valid_dt = utc_from_timestamp(valid) + # check if timestamp valid, to avoid crash on malformed timestamp + try: + valid_dt = utc_from_timestamp(valid) + except OverflowError: + _LOGGER.warning("Session timestamp %f is invalid!", valid_dt) + continue + if valid_dt < now: continue @@ -103,7 +109,13 @@ class Ingress(JsonConfig, CoreSysAttributes): """Return True if session valid and make it longer valid.""" if session not in self.sessions: return False - valid_until = utc_from_timestamp(self.sessions[session]) + + # check if timestamp valid, to avoid crash on malformed timestamp + try: + valid_until = utc_from_timestamp(self.sessions[session]) + except OverflowError: + _LOGGER.warning("Session timestamp %f is invalid!", valid_until) + return False # Is still valid? if valid_until < utcnow():