Documentation ¶
Index ¶
- Variables
- func Builder(c *cli.Context, args *arguments.Args, invoke fx.Option, logger log15.Logger) *fx.App
- func IMAPMonitorAction(c *cli.Context) error
- func MilterAction(c *cli.Context) error
- func NewRecipient(secret *memguard.LockedBuffer) (*pake.Pake, error)
- func NewSMTPBackend(args *arguments.Args, collector collectors.Collector, ...) smtp.Backend
- func SMTPAction(c *cli.Context) error
- func WorkerAction(c *cli.Context) error
- type Backend
- type CurrentIncrements
- type HTTPEngine
- type HTTPMasterEngine
- type HTTPMasterServer
- type HTTPServer
- type IMAPMonitor
- type MilterImpl
- func (e *MilterImpl) Body(m *milter.Modifier) (milter.Response, error)
- func (e *MilterImpl) BodyChunk(chunk []byte, m *milter.Modifier) (milter.Response, error)
- func (e *MilterImpl) Connect(host string, family string, port uint16, addr net.IP, m *milter.Modifier) (milter.Response, error)
- func (e *MilterImpl) Header(name, value string, m *milter.Modifier) (milter.Response, error)
- func (e *MilterImpl) Headers(headers textproto.MIMEHeader, m *milter.Modifier) (milter.Response, error)
- func (e *MilterImpl) Helo(name string, m *milter.Modifier) (milter.Response, error)
- func (e *MilterImpl) MailFrom(from string, m *milter.Modifier) (milter.Response, error)
- func (e *MilterImpl) RcptTo(rcptTo string, m *milter.Modifier) (milter.Response, error)
- type MilterServer
- type PakeRecipients
- type SMTPServer
- type SessionKeyStore
- type User
- type WorkerClient
Constants ¶
This section is empty.
Variables ¶
View Source
var GinMode string
View Source
var HTTPMasterService = fx.Provide(func(lc fx.Lifecycle, args *arguments.Args, collector collectors.Collector, consumer consumers.Consumer, logger log15.Logger) *HTTPMasterServer { if args.Secret == nil { return nil } s := NewHTTPMasterServer(args, collector, consumer, logger) utils.Append(lc, s, logger) return s })
View Source
var HTTPService = fx.Provide(func(lc fx.Lifecycle, args *arguments.Args, collector collectors.Collector, forwarder forwarders.Forwarder, p parser.Parser, logger log15.Logger) *HTTPServer { s := NewHTTPServer(args, collector, forwarder, p, logger) utils.Append(lc, s, logger) return s })
View Source
var IMAPMonitorService = fx.Provide(func(lc fx.Lifecycle, c *cli.Context, collector collectors.Collector, forwarder forwarders.Forwarder, logger log15.Logger) (*IMAPMonitor, error) { s, err := NewIMAPMonitor(c, collector, forwarder, logger) if err != nil { return nil, err } if lc != nil { utils.Append(lc, s, logger) } return s, nil })
View Source
var MilterService = fx.Provide(func(lc fx.Lifecycle, args *arguments.Args, collector collectors.Collector, forwarder forwarders.Forwarder, p parser.Parser, logger log15.Logger) *MilterServer { s := NewMilterServer(args, collector, forwarder, logger) if lc != nil { utils.Append(lc, s, logger) } return s })
View Source
var SMTPService = fx.Provide(func(lc fx.Lifecycle, args *arguments.Args, backend smtp.Backend, p parser.Parser, logger log15.Logger) *SMTPServer { s := NewSMTPService(args, backend, logger) utils.Append(lc, s, logger) return s })
Functions ¶
func IMAPMonitorAction ¶
func MilterAction ¶
func NewRecipient ¶
func NewRecipient(secret *memguard.LockedBuffer) (*pake.Pake, error)
func NewSMTPBackend ¶
func NewSMTPBackend(args *arguments.Args, collector collectors.Collector, forwarder forwarders.Forwarder, logger log15.Logger) smtp.Backend
func SMTPAction ¶
func WorkerAction ¶
Types ¶
type Backend ¶
type Backend struct { Port int Collector collectors.Collector Forwarder forwarders.Forwarder Logger log15.Logger }
func (*Backend) AnonymousLogin ¶
type CurrentIncrements ¶
type CurrentIncrements struct {
// contains filtered or unexported fields
}
func NewIncrements ¶
func NewIncrements() *CurrentIncrements
func (*CurrentIncrements) Check ¶
func (i *CurrentIncrements) Check(workerID ulid.ULID, increment uint64) error
func (*CurrentIncrements) Erase ¶
func (i *CurrentIncrements) Erase(workerID ulid.ULID)
func (*CurrentIncrements) NewWorker ¶
func (i *CurrentIncrements) NewWorker(workerID ulid.ULID)
type HTTPEngine ¶
func NewHTTPEngine ¶
func NewHTTPEngine(collector collectors.Collector, forwarder forwarders.Forwarder, p parser.Parser, logger log15.Logger) HTTPEngine
type HTTPMasterEngine ¶
func NewHTTPMasterEngine ¶
func NewHTTPMasterEngine(secret *memguard.LockedBuffer, collector collectors.Collector, consumer consumers.Consumer, logger log15.Logger) HTTPMasterEngine
type HTTPMasterServer ¶
func NewHTTPMasterServer ¶
func NewHTTPMasterServer(args *arguments.Args, collector collectors.Collector, consumer consumers.Consumer, logger log15.Logger) *HTTPMasterServer
func (HTTPMasterServer) Name ¶
func (s HTTPMasterServer) Name() string
type HTTPServer ¶
func NewHTTPServer ¶
func NewHTTPServer(args *arguments.Args, collector collectors.Collector, forwarder forwarders.Forwarder, p parser.Parser, logger log15.Logger) *HTTPServer
func (HTTPServer) Name ¶
func (s HTTPServer) Name() string
type IMAPMonitor ¶
type IMAPMonitor struct { URI string // contains filtered or unexported fields }
func NewIMAPMonitor ¶
func NewIMAPMonitor(c *cli.Context, collector collectors.Collector, forwarder forwarders.Forwarder, logger log15.Logger) (*IMAPMonitor, error)
func (*IMAPMonitor) Close ¶
func (m *IMAPMonitor) Close() error
func (*IMAPMonitor) Name ¶
func (m *IMAPMonitor) Name() string
func (*IMAPMonitor) Prestart ¶
func (m *IMAPMonitor) Prestart() error
type MilterImpl ¶
type MilterImpl struct { Collector collectors.Collector Forwarder forwarders.Forwarder // contains filtered or unexported fields }
func NewMilterImpl ¶
func NewMilterImpl(collector collectors.Collector, forwarder forwarders.Forwarder) *MilterImpl
func (*MilterImpl) Headers ¶
func (e *MilterImpl) Headers(headers textproto.MIMEHeader, m *milter.Modifier) (milter.Response, error)
type MilterServer ¶
type MilterServer struct { Collector collectors.Collector Forwarder forwarders.Forwarder ListenAddr string ListenPort int Logger log15.Logger Listener net.Listener }
func NewMilterServer ¶
func NewMilterServer(args *arguments.Args, collector collectors.Collector, forwarder forwarders.Forwarder, logger log15.Logger) *MilterServer
func (*MilterServer) Name ¶
func (s *MilterServer) Name() string
func (*MilterServer) Prestart ¶
func (s *MilterServer) Prestart() error
type PakeRecipients ¶
type PakeRecipients struct {
// contains filtered or unexported fields
}
func NewPakeRecipients ¶
func NewPakeRecipients() *PakeRecipients
func (*PakeRecipients) Erase ¶
func (r *PakeRecipients) Erase(workerID ulid.ULID)
type SMTPServer ¶
type SMTPServer struct { *smtp.Server // contains filtered or unexported fields }
func NewSMTPService ¶
func NewSMTPService(args *arguments.Args, backend smtp.Backend, logger log15.Logger) *SMTPServer
func (*SMTPServer) Name ¶
func (s *SMTPServer) Name() string
func (*SMTPServer) Prestart ¶
func (s *SMTPServer) Prestart() error
type SessionKeyStore ¶
type SessionKeyStore struct {
// contains filtered or unexported fields
}
func NewSessionKeyStore ¶
func NewSessionKeyStore() *SessionKeyStore
func (*SessionKeyStore) Erase ¶
func (r *SessionKeyStore) Erase(workerID ulid.ULID)
func (*SessionKeyStore) Get ¶
func (r *SessionKeyStore) Get(workerID ulid.ULID) (key *memguard.LockedBuffer, err error)
type User ¶
type User struct { Port int Collector collectors.Collector Forwarder forwarders.Forwarder Logger log15.Logger Stop <-chan struct{} }
type WorkerClient ¶
type WorkerClient struct { HTTP *http.Client MasterHostPort string PingURL string SubmitURL string WorkURL string ByeURL string ACKURL string Auth1URL string Auth2URL string // contains filtered or unexported fields }
func NewWorker ¶
func NewWorker(secret *memguard.LockedBuffer, hostport string, logger log15.Logger) *WorkerClient
Click to show internal directories.
Click to hide internal directories.