fork of github.com/chrj/smtpd
Find a file
Bernhard Froehlich 0002b7c334
Format timestamp according to RFC 5322 as described in RFC 5321 (chapter 4.4):
Time-stamp-line = "Received:" FWS Stamp <CRLF>
Stamp = From-domain By-domain Opt-info [CFWS] ";"
FWS date-time
; where "date-time" is as defined in RFC 5322 [4]
; but the "obs-" forms, especially two-digit
; years, are prohibited in SMTP and MUST NOT be used.
...
2018-12-14 11:20:58 +00:00
examples/dkim-proxy Update import paths for move to GitHub 2017-08-20 18:05:24 +02:00
address.go Removed check for single '@' in address. 2018-06-29 14:32:02 -07:00
envelope.go Format timestamp according to RFC 5322 as described in RFC 5321 (chapter 4.4): 2018-12-14 11:20:58 +00:00
example_test.go Add Go Report Card, fix a couple of golint warnings. 2017-08-24 11:41:02 +02:00
go.mod Adding support for go modules. 2018-09-26 21:16:44 +02:00
go.sum Adding support for go modules. 2018-09-26 21:16:44 +02:00
LICENSE Fix several panics on invalid input 2016-02-12 01:26:50 +00:00
protocol.go Removing personal e-mail from comments and tests. 2018-09-26 21:22:28 +02:00
protocol_test.go Removing personal e-mail from comments and tests. 2018-09-26 21:22:28 +02:00
README.md Updated readme to reflect versioning scheme. 2018-09-26 21:24:54 +02:00
smtpd.go Ensure that the TLS handshake has been done before using tls.ConnectionState() 2018-12-14 11:04:35 +00:00
smtpd_test.go Removing personal e-mail from comments and tests. 2018-09-26 21:22:28 +02:00
wrap.go Fix several panics on invalid input 2016-02-12 01:26:50 +00:00
wrap_test.go Fix several panics on invalid input 2016-02-12 01:26:50 +00:00

Go smtpd GoDoc Go Report Card

Package smtpd implements an SMTP server in golang.

Features

  • STARTTLS (using crypto/tls)
  • Authentication (PLAIN/LOGIN, only after STARTTLS)
  • XCLIENT and PROXY protocol (for running behind a proxy)
  • Connection, HELO, sender and recipient checks for rejecting e-mails using callbacks
  • Configurable limits for: connection count, message size and recipient count
  • Hands incoming e-mail off to a configured callback function

Version numbers

The package is tagged with semantic version numbers, making it suitable for use in a Go Module.

Feedback

If you end up using this package or have any feedback, I'd very much like to hear about it. You can reach me by email.