Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/alienscience/imapsrv
/ functions
Functions
120 in github.com/alienscience/imapsrv
⨍
Functions
120
◇
Types & classes
28
↓ 12 callers
Method
current
current gets the current byte
lexer.go:266
↓ 11 callers
Method
newLine
newLine moves onto a new line
lexer.go:271
↓ 9 callers
Method
consume
-------- Low level lexer functions ------------------------------------------- consume a single byte and return the new character Does not go through
lexer.go:237
↓ 9 callers
Function
createLexer
createLexer creates a partially initialised IMAP lexer lexer.newLine() must be the first call to this lexer
lexer.go:78
↓ 9 callers
Method
extra
extra adds an untagged line to a response
response.go:62
↓ 8 callers
Function
ok
ok creatse a OK response
response.go:35
↓ 7 callers
Method
Error
Error returns the string representation of the parseError
parser.go:18
↓ 7 callers
Method
expectString
----- Helper functions ------------------------------------------------------- expectString gets a string token using the given lexer function If the
parser.go:126
↓ 5 callers
Method
astring
-------- IMAP tokens --------------------------------------------------------- astring treats the input as a string
lexer.go:85
↓ 4 callers
Method
Start
Start an IMAP server
imap.go:140
↓ 4 callers
Function
createResponse
createResponse creates a response
response.go:25
↓ 4 callers
Method
log
log writes the info messages to the logger with session information
session.go:62
↓ 4 callers
Function
no
no creates a NO response
response.go:45
↓ 4 callers
Method
skipSpace
skipSpace skips any spaces
lexer.go:286
↓ 3 callers
Method
GetMailbox
GetMailbox gets IMAP mailbox information Returns nil if the mailbox does not exist
mailstore.go:46
↓ 3 callers
Function
bad
bad creates a BAD response
response.go:40
↓ 3 callers
Function
internalError
------ Helper functions ------------------------------------------------------ internalError logs an error and return an response
command.go:239
↓ 3 callers
Method
logError
logError sends a log message to the default Logger
imap.go:271
↓ 3 callers
Function
pathToSlice
pathToSlice converts a path to a slice of strings
command.go:253
↓ 3 callers
Method
startToken
startToken marks the start a new token
lexer.go:295
↓ 3 callers
Method
write
write will write a response to the given writer
response.go:80
↓ 2 callers
Method
GetMailboxes
GetMailboxes gets a list of mailboxes at the given path
mailstore.go:48
↓ 2 callers
Function
createSession
Create a new IMAP session
session.go:50
↓ 2 callers
Method
generalString
-------- IMAP token helper functions ----------------------------------------- generalString handles a string that can be bare, a literal or quoted
lexer.go:111
↓ 2 callers
Method
list
list creates a LIST command
parser.go:104
↓ 2 callers
Method
literal
literal parses a length tagged literal TODO: send a continuation request after the first line is read
lexer.go:160
↓ 2 callers
Function
mustAuthenticate
mustAuthenticate indicates a command is invalid because the user has not authenticated
command.go:246
↓ 2 callers
Method
nonquoted
nonquoted reads a non-quoted string
lexer.go:212
↓ 2 callers
Method
qstring
qstring reads a quoted string
lexer.go:127
↓ 2 callers
Method
runListener
runListener runs the given listener on a separate goroutine
imap.go:175
↓ 2 callers
Function
setupTest
()
command_test.go:6
↓ 2 callers
Method
shouldClose
shouldClose marks that a response should close the connection
response.go:68
↓ 1 callers
Method
Authenticate
Authenticate attempts to authenticate the given credentials
auth/auth.go:15
↓ 1 callers
Method
CreateUser
CreateUser creates a user with the given username
auth/boltstore/bolt.go:71
↓ 1 callers
Method
FirstUnseen
FirstUnseen gets the sequence number of the first unseen message in an IMAP mailbox
mailstore.go:50
↓ 1 callers
Function
NewServer
NewServer creates a new server with the given options
imap.go:123
↓ 1 callers
Method
NextUid
NextUid gets the next available uid in an IMAP mailbox
mailstore.go:56
↓ 1 callers
Method
RecentMessages
RecentMessages gets the total number of unread messages in an IMAP mailbox
mailstore.go:54
↓ 1 callers
Method
TotalMessages
TotalMessages gets the total number of messages in an IMAP mailbox
mailstore.go:52
↓ 1 callers
Method
addMailboxInfo
addMailboxInfo adds mailbox information to the given response
session.go:119
↓ 1 callers
Method
capability
capability creates a CAPABILITY command
parser.go:69
↓ 1 callers
Method
close
close closes an IMAP client
imap.go:266
↓ 1 callers
Method
consumeAll
consumeAll a single byte and return the new character Goes through newlines
lexer.go:252
↓ 1 callers
Function
copySlice
copySlice copies a slice
session.go:149
↓ 1 callers
Function
createParser
createParser creates a new IMAP parser, reading from the Reader
parser.go:23
↓ 1 callers
Function
defaultConfig
defaultConfig returns the default server configuration
imap.go:57
↓ 1 callers
Method
depthFirstMailboxes
depthFirstMailboxes gets a recursive mailbox listing At the moment this doesn't support wildcards such as 'leader%' (are they used in real life?)
session.go:157
↓ 1 callers
Function
empty
empty creates an empty response
response.go:50
↓ 1 callers
Method
execute
Execute the command and return an IMAP response
command.go:14
↓ 1 callers
Method
execute
execute a capability
command.go:42
↓ 1 callers
Method
execute
execute a LOGOUT command
command.go:120
↓ 1 callers
Function
fatalResponse
fatalResponse writes an untagged fatal response (BYE)
response.go:55
↓ 1 callers
Method
handle
handle requests from an IMAP client
imap.go:208
↓ 1 callers
Function
joinMailboxFlags
joinMailboxFlags returns a string of mailbox flags for the given mailbox
command.go:285
↓ 1 callers
Method
login
login creates a LOGIN command
parser.go:74
↓ 1 callers
Method
logout
logout creates a LOGOUT command
parser.go:90
↓ 1 callers
Method
next
----- Commands --------------------------------------------------------------- next attempts to read the next command
parser.go:31
↓ 1 callers
Method
noop
noop creates a NOOP command
parser.go:64
↓ 1 callers
Method
replaceBuffers
replaceBuffers sets two possible buffers that need replacement
response.go:74
↓ 1 callers
Method
selectCmd
selectCmd creates a select command
parser.go:95
↓ 1 callers
Method
selectMailbox
selectMailbox selects a mailbox - returns true if the mailbox exists
session.go:70
↓ 1 callers
Method
starttls
starttls creates a starttls command
parser.go:85
↓ 1 callers
Method
unknown
unknown creates a placeholder for an unknown command
parser.go:118
Function
AuthStoreOption
AuthStoreOption adds an authenticaton backend
imap.go:74
Method
Authenticate
Authenticate attempts to authenticate the given credentials
auth/boltstore/bolt.go:47
Method
Authenticate
Authenticate attempts to authenticate the given credentials
auth/mysqlstore/mysql.go:13
Function
CheckPassword
CheckPassword checks if the hash was the result of hashing this specific plainPassword
auth/auth.go:33
Method
CreateUser
CreateUser creates a user with the given username
auth/auth.go:18
Method
CreateUser
CreateUser creates a user with the given username
auth/mysqlstore/mysql.go:18
Method
DeleteUser
DeleteUser removes the username from the database entirely
auth/auth.go:29
Method
DeleteUser
DeleteUser removes the username from the database entirely
auth/boltstore/bolt.go:109
Method
DeleteUser
DeleteUser removes the username from the database entirely
auth/mysqlstore/mysql.go:35
Method
FirstUnseen
FirstUnseen gets the sequence number of the first unseen message in an IMAP mailbox
mailstore.go:104
Method
FirstUnseen
FirstUnseen gets a dummy number of first unseen messages in an IMAP mailbox
command_test.go:58
Method
GetMailbox
GetMailbox gets mailbox information
mailstore.go:64
Method
GetMailbox
GetMailbox gets dummy Mailbox information
command_test.go:21
Method
GetMailboxes
GetMailboxes gets a list of mailboxes at the given path
mailstore.go:73
Method
GetMailboxes
GetMailboxes lists dummy Mailboxes
command_test.go:29
Function
HashPassword
HashPassword hashes the plainPassword using the bcrypt.DefaultCost
auth/auth.go:38
Method
ListUsers
ListUsers lists all information about the users TODO: this could be very neat for the sysadmin, but probably a lot of metadata about users is desir
auth/auth.go:26
Method
ListUsers
ListUsers lists all information about the users TODO: this could be very neat for the sysadmin, but probably a lot of metadata about users is desir
auth/boltstore/bolt.go:100
Method
ListUsers
ListUsers lists all information about the users TODO: this could be very neat for the sysadmin, but probably a lot of metadata about users is desir
auth/mysqlstore/mysql.go:30
Function
ListenOption
ListenOption adds an interface to listen to
imap.go:82
Function
ListenSTARTTLSOoption
ListenSTARTTLSOoption enables STARTTLS with the given certificate and keyfile
imap.go:93
Function
MaxClientsOption
MaxClientsOption sets the MaxClients config
imap.go:115
Function
NewBoltAuthStore
NewBoltAuthStore creates a new auth store using BoltDB, at the specified file location
auth/boltstore/bolt.go:21
Method
NextUid
DummyMailstore gets the next available uid in an IMAP mailbox
mailstore.go:119
Method
NextUid
NextUid gets a dummy next-uid in an IMAP mailbox
command_test.go:73
Method
RecentMessages
RecentMessages gets the total number of unread messages in an IMAP mailbox
mailstore.go:114
Method
RecentMessages
RecentMessages gets a dummy number of unread messages in an IMAP mailbox
command_test.go:68
Method
ResetPassword
ResetPassword resets the password for the given username
auth/auth.go:21
Method
ResetPassword
ResetPassword resets the password for the given username
auth/boltstore/bolt.go:89
Method
ResetPassword
ResetPassword resets the password for the given username
auth/mysqlstore/mysql.go:23
Function
StoreOption
Add a mailstore to the config StoreOption add a mailstore to the config
imap.go:66
Function
TestAstring
TestAstring checks the lexer will return a valid <astring> per the ABNF rule, or panic on a failing test Astring = 1*ASTRING-CHAR / string ASTRING-CH
lexer_test.go:56
Function
TestCapabilityCommand
TestCapabilityCommand tests the correctness of the CAPABILITY command
command_test.go:78
Function
TestConsume
(t *testing.T)
lexer_test.go:140
Function
TestEmptyLiteral
(t *testing.T)
lexer_test.go:22
Function
TestLexesAstring
(t *testing.T)
lexer_test.go:153
Function
TestLexesLiteral
(t *testing.T)
lexer_test.go:187
next →
1–100 of 120, ranked by callers