https://github.com/albertito/spf
SPF (Sender Policy Framework) implementation in Go [mirror]
https://github.com/albertito/spf
go-library smtp-server spf spf-library spf-record
Last synced: 11 months ago
JSON representation
SPF (Sender Policy Framework) implementation in Go [mirror]
- Host: GitHub
- URL: https://github.com/albertito/spf
- Owner: albertito
- License: other
- Created: 2017-08-13T15:48:26.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2023-07-06T08:56:34.000Z (almost 3 years ago)
- Last Synced: 2024-06-19T02:01:06.365Z (almost 2 years ago)
- Topics: go-library, smtp-server, spf, spf-library, spf-record
- Language: Go
- Homepage:
- Size: 237 KB
- Stars: 20
- Watchers: 3
- Forks: 8
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# blitiri.com.ar/go/spf
[](https://pkg.go.dev/blitiri.com.ar/go/spf)
[](https://github.com/albertito/spf/actions)
[](https://goreportcard.com/report/github.com/albertito/spf)
[](https://coveralls.io/github/albertito/spf)
[spf](https://godoc.org/blitiri.com.ar/go/spf) is an open source
implementation of the [Sender Policy Framework
(SPF)](https://en.wikipedia.org/wiki/Sender_Policy_Framework) in Go.
It is used by the [chasquid](https://blitiri.com.ar/p/chasquid/) and
[maddy](https://maddy.email) SMTP servers.
## Example
```go
// 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](https://pkg.go.dev/blitiri.com.ar/go/spf) for
more details.
## Status
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).
## Contact
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](https://groups.google.com/forum/#!forum/chasquid).