Add rspamd as a second spam filter alongside SpamAssassin
Some checks are pending
continuous-integration/drone/push Build is running
Some checks are pending
continuous-integration/drone/push Build is running
Closes: #36
This commit is contained in:
parent
8fda7746a1
commit
25afbcf90a
18 changed files with 512 additions and 27 deletions
|
|
@ -264,6 +264,26 @@ func (e *EmailMessage) GetSpamAssassinHeaders() map[string]string {
|
|||
return headers
|
||||
}
|
||||
|
||||
// GetRspamdHeaders extracts rspamd-related headers
|
||||
func (e *EmailMessage) GetRspamdHeaders() map[string]string {
|
||||
headers := make(map[string]string)
|
||||
|
||||
rspamdHeaders := []string{
|
||||
"X-Spamd-Result",
|
||||
"X-Rspamd-Score",
|
||||
"X-Rspamd-Action",
|
||||
"X-Rspamd-Server",
|
||||
}
|
||||
|
||||
for _, headerName := range rspamdHeaders {
|
||||
if value := e.Header.Get(headerName); value != "" {
|
||||
headers[headerName] = value
|
||||
}
|
||||
}
|
||||
|
||||
return headers
|
||||
}
|
||||
|
||||
// GetTextParts returns all text/plain parts
|
||||
func (e *EmailMessage) GetTextParts() []MessagePart {
|
||||
return filterParts(e.Parts, func(p MessagePart) bool {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue