mirror of
https://github.com/jhillyerd/inbucket.git
synced 2025-12-17 01:27:01 +00:00
50 lines
1.1 KiB
Go
50 lines
1.1 KiB
Go
package event
|
|
|
|
import (
|
|
"net/mail"
|
|
"time"
|
|
)
|
|
|
|
const (
|
|
// ActionDefer defers decision to built-in Inbucket logic.
|
|
ActionDefer = iota
|
|
// ActionAllow explicitly allows this event.
|
|
ActionAllow
|
|
// ActionDeny explicitly deny this event, typically with specified SMTP error.
|
|
ActionDeny
|
|
)
|
|
|
|
// AddressParts contains the local and domain parts of an email address.
|
|
type AddressParts struct {
|
|
Local string
|
|
Domain string
|
|
}
|
|
|
|
// InboundMessage contains the basic header and mailbox data for a message being received.
|
|
type InboundMessage struct {
|
|
Mailboxes []string
|
|
From *mail.Address
|
|
To []*mail.Address
|
|
Subject string
|
|
Size int64
|
|
}
|
|
|
|
// MessageMetadata contains the basic header data for a message event.
|
|
type MessageMetadata struct {
|
|
Mailbox string
|
|
ID string
|
|
From *mail.Address
|
|
To []*mail.Address
|
|
Date time.Time
|
|
Subject string
|
|
Size int64
|
|
Seen bool
|
|
}
|
|
|
|
// SMTPResponse describes the response to an SMTP policy check.
|
|
type SMTPResponse struct {
|
|
Action int // ActionDefer, ActionAllow, etc.
|
|
ErrorCode int // SMTP error code to respond with on deny.
|
|
ErrorMsg string // SMTP error message to respond with on deny.
|
|
}
|