cab1997dff
fix: GTK-Theme-Validierung entfernt — GTK löst Theme-Namen selbst auf
...
Die Regex VALID_THEME_NAME blockierte Theme-Namen mit '+' (z.B.
catppuccin-mocha-lavender-standard+default). Da GTK den Theme-Namen
intern über Standardverzeichnisse auflöst, ist eigene Validierung
unnötig und kontraproduktiv.
2026-03-26 15:37:02 +01:00
8b1608f99d
fix: Audit-Findings — Theme-Validierung, locale-unabhängige Tests
...
- Theme-Name aus settings.ini gegen Regex validiert (nur [A-Za-z0-9_-]),
verhindert Path-Traversal über GTK-Theme-Loading (S-05)
- Faillock-Tests nutzen expliziten strings-Parameter statt System-Locale,
Tests laufen jetzt auch auf EN-Systemen (MAINT-4)
- Test für Path-Traversal im Theme-Namen ergänzt
2026-03-26 12:36:16 +01:00
c4b3dc833b
fix: Audit-Findings — Bugs, Security-Hardening und Performance
...
- BUG-02: cancel_session bei mehrstufiger Auth (z.B. TOTP)
- BUG-03: CalledProcessError bei reboot/shutdown abfangen
- M-1+EH-01: configparser interpolation=None + Error-Handling
- H-1: Exec-Cmd Validierung (absoluter Pfad erforderlich)
- PERF: Theme-Guard, Default-Avatar-Cache, Avatar-Cache per User
- Mutable Default Arguments in sessions.py (list → tuple)
- Ungenutzten Gio-Import entfernt
2026-03-26 11:35:14 +01:00
af01e0a44d
fix: Security- und Quality-Hardening aus Audit
...
- ipc.py: _recvall() Loop für fragmentierte Socket-Reads, 64 KiB
Payload-Limit gegen OOM
- greeter.py: GREETD_SOCK Validierung (absoluter Pfad + S_ISSOCK),
Socket-Leak behoben (_close_greetd_sock), shlex.split() statt
str.split() für Exec-Befehle, greetd-Fehlermeldungen auf 200
Zeichen begrenzt, get_style_context() durch get_color() ersetzt
(GTK 4.10+ Deprecation), Socket-Timeout (10s)
- users.py: ValueError-Absicherung bei int(uid_str), Username-
Sanitierung gegen Pfad-Traversal, Symlink-Check bei Avatar-Pfaden
2026-03-26 11:18:32 +01:00
87c2e7d9c8
feat: initial Moongreet greeter implementation
...
greetd-Greeter für Wayland mit Python + GTK4 + gtk4-layer-shell.
Enthält IPC-Protokoll, User/Session-Erkennung, Power-Actions,
komplettes UI-Layout und 36 Tests (Unit + Integration).
2026-03-26 09:47:19 +01:00