From 23197e1dcc87ba1cc74c2b664cb148ed1f0a40f2 Mon Sep 17 00:00:00 2001 From: Dennis Schwerdel Date: Sun, 12 Apr 2026 01:04:37 +0200 Subject: [PATCH] Improvements --- src/main.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main.py b/src/main.py index 78ff53e..27b82c5 100644 --- a/src/main.py +++ b/src/main.py @@ -8,6 +8,7 @@ import logging import random import ipaddress import threading +import re from http.server import ThreadingHTTPServer, BaseHTTPRequestHandler log = logging.getLogger(__name__) @@ -139,6 +140,7 @@ class Updater: }, f, indent=2) def run(self): + interval = self.config.get("interval", 600) while True: try: self.detect_updates() @@ -146,12 +148,16 @@ class Updater: self.write_state() except Exception as e: log.exception(e) - time.sleep(10*60) + time.sleep(interval) class Handler(BaseHTTPRequestHandler): def do_GET(self): assert isinstance(self.server, WebServer) + if not re.fullmatch(r"/[a-zA-Z0-9._-]*", self.path): + self.send_response(404) + self.end_headers() + self.wfile.write(bytes("File not found", 'utf-8')) if self.path == '/': path = self.server.args.web + '/index.html' elif self.path == '/state':