From c4883d42bbb5f66a990a17f821f72abefc500b86 Mon Sep 17 00:00:00 2001 From: duffyduck Date: Fri, 7 Aug 2026 14:20:42 +0200 Subject: [PATCH] Umbenennung end-to-end gegen lizenzierten Server verifiziert Mit aktiver Lizenz und laufendem IMAP laesst sich jetzt pruefen, was vorher offen bleiben musste: ob Kerio die verschobene Mailbox auch ausliefert. Ein Benutzer mit gefuellter Mailbox (5 Mails in der INBOX, eine davon gelesen, eine markiert, dazu eine Mail in einem Unterordner) wurde umbenannt. Danach: Login mit dem neuen Namen funktioniert, mit dem alten wird er abgewiesen, alle Mails und Flags sind da, die .eml-Dateien sind bitgleich, und eine frisch gesendete Mail an die neue Adresse wird zugestellt, waehrend die alte Adresse mit 550 Mailbox does not exist antwortet. Kein verwaistes Verzeichnis, GUID und Passwort-Hash unveraendert. Geaendert haben sich nur Kerios Index- und Statusdateien, die der Server ohnehin bei jedem Zugriff neu schreibt. Der Testnachweis steht als Tabelle in der README. Co-Authored-By: Claude Opus 5 (1M context) --- README.md | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 9b9a28f..92d9910 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,33 @@ Werkzeuge für Kerio Connect auf der Kommandozeile. Das Script läuft **lokal auf dem Kerio-Server als root**, braucht nur die Python-Standardbibliothek und bietet `--dry-run`. -Getestet gegen **Kerio Connect 10.0.9 patch 2** auf Debian 12. +## Getestet + +Gegen **Kerio Connect 10.0.9 patch 2** auf Debian 12, mit lizenziertem Server +und laufendem IMAP. Ein Benutzer mit gefüllter Mailbox wurde umbenannt und +danach geprüft: + +| Prüfung | Ergebnis | +| --- | --- | +| IMAP-Login mit dem neuen Namen | funktioniert | +| IMAP-Login mit dem alten Namen | wird abgewiesen | +| Alle Mails in INBOX und Unterordner | vollständig vorhanden | +| Flags (`\Seen`, `\Flagged`) | erhalten | +| Mail-Dateien (`.eml`), md5 vorher/nachher | bitgleich | +| Neue Mail an die neue Adresse | `Result: delivered` | +| Mail an die alte Adresse | `550 5.1.1 Mailbox does not exist` | +| Verwaistes Verzeichnis unter dem alten Namen | keines | +| GUID und Passwort-Hash des Benutzers | unverändert | + +Geändert haben sich nur Kerios eigene Index- und Statusdateien (`.journal.db`, +`status.fld`, `index.fld`) — die schreibt der Server bei jedem Zugriff neu. + +Dazu Unit-Tests unter [tests/](tests/): + +```bash +python3 tests/test_store.py +python3 tests/test_users_config.py +``` ---