21 lines
598 B
Go
21 lines
598 B
Go
// Package backend defines an IMAP server backend interface.
|
|
package backend
|
|
|
|
import (
|
|
"errors"
|
|
|
|
"github.com/emersion/go-imap"
|
|
)
|
|
|
|
// ErrInvalidCredentials is returned by Backend.Login when a username or a
|
|
// password is incorrect.
|
|
var ErrInvalidCredentials = errors.New("Invalid credentials")
|
|
|
|
// Backend is an IMAP server backend. A backend operation always deals with
|
|
// users.
|
|
type Backend interface {
|
|
// Login authenticates a user. If the username or the password is incorrect,
|
|
// it returns ErrInvalidCredentials.
|
|
Login(connInfo *imap.ConnInfo, username, password string) (User, error)
|
|
}
|