spf is an open source implementation of the Sender Policy Framework (SPF) in Go.
It is used by the chasquid and maddy SMTP servers.
// Check if `sender` is authorized to send from the given `ip`. The `domain`
// is used if the sender doesn't have one.
result, err := spf.CheckHostWithSender(ip, domain, sender)
if result == spf.Fail {
// Not authorized to send.
}
See the package documentation for more details.
All SPF mechanisms, modifiers, and macros are supported.
The API should be considered stable. Major version changes will be announced to the mailing list (details below).
If you have any questions, comments or patches please send them to the mailing
list, chasquid@googlegroups.com
.
To subscribe, send an email to chasquid+subscribe@googlegroups.com
.
You can also browse the archives.