tcpd-sso/emailstorage.go
2021-10-05 05:35:09 -07:00

32 lines
1.2 KiB
Go

package sso
// TODO: Make interfaces for email stores.
// BitcaskStore contains details of a bitcask backed email store.
type BitcaskStore struct {
// StoreNode is an identifying string pointing to what server the BitcaskStore is primarily stored on.
StoreNode string `json:"storage_node"`
}
// BoltStore contains details of a Bolt backed email store.
type BoltStore struct {
// StoreNode is an identifying string pointing to what server the BoltStore is primarily stored on.
StoreNode string `json:"storage_node"`
}
// TemporaryStore contains details of a temporary email store.
type TemporaryStore struct {
// StoreNode is an identifying string pointing to what server the BoltStore is primarily stored on.
StoreNode string `json:"storage_node"`
}
// Maildir contains information about where a users email is stored. Aims to be partially compatible with Dovecot.
type Maildir struct {
// StoreNode is an identifying string pointing to what server the Maildir is primarily stored on.
StoreNode string `json:"storage_node"`
// StoreBaseDirectory is the base name of the Maildir directory.
StoreBaseDirectory string `json:"storage_base_directory"`
// StoreMailDir is the actual directory containing email messages.
StoreMaildir string `json:"maildir"`
}