Hello,
First of all, thank you for this awesome and lightweight tool!
I am currently running dmarcguard on the same server that hosts my mail server (Postfix/Courier). Because of this setup, the tool has direct filesystem access to the Maildir where the DMARC reports land.
Instead of configuring a local IMAP connection (which adds unnecessary overhead and credential management),
it would be amazing if dmarcguard could natively parse a local Maildir folder.
Proposed Solution / Use Case:
- Introduce a new configuration variable (e.g.,
MAILDIR_PATH=/var/mail/dmarc/Maildir).
- If this path is set, the background worker polls the local directory (reading files from
new/ and moving them to cur/) instead of connecting via IMAP.
- There are already well-maintained Go libraries for this (like
github.com/emersion/go-maildir), which would keep the binary lightweight.
Questions to the Author & Community:
- Is there general interest in such a feature, or has anyone already worked on a similar approach?
- Are there any architectural blockers or design principles in this project that would speak against adding local directory/Maildir support?
If there is interest and no major architectural blockers, I am also considering forking the project to look into implementing this myself.
(But I don't touch Go Code for 10 Years ;)
Thanks for your time and feedback!
Best regards
Hello,
First of all, thank you for this awesome and lightweight tool!
I am currently running
dmarcguardon the same server that hosts my mail server (Postfix/Courier). Because of this setup, the tool has direct filesystem access to theMaildirwhere the DMARC reports land.Instead of configuring a local IMAP connection (which adds unnecessary overhead and credential management),
it would be amazing if
dmarcguardcould natively parse a localMaildirfolder.Proposed Solution / Use Case:
MAILDIR_PATH=/var/mail/dmarc/Maildir).new/and moving them tocur/) instead of connecting via IMAP.github.com/emersion/go-maildir), which would keep the binary lightweight.Questions to the Author & Community:
If there is interest and no major architectural blockers, I am also considering forking the project to look into implementing this myself.
(But I don't touch Go Code for 10 Years ;)
Thanks for your time and feedback!
Best regards