-
Notifications
You must be signed in to change notification settings - Fork 0
/
db_format.txt
57 lines (53 loc) · 1.59 KB
/
db_format.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
domains:[
name: 'dev.com'
transport: 'DB' #for flat file fallback?
active: 1
aliases: [] # e.g. dev.co.uk
signing:{
cert: 'path/to/cert'
additionalHeaders:[]
#other options/go knows what
}
options:{
userLimit: 50
sizeLimit: 1GB # raw DB size limit
# plus plugin stuffs
}
users:[
name: 'john.locke108'
pass: hashkey #can put any front on (clear, crypt etc. - but will compare in hash for DB security sake)
sizeLimit: 50mb # raw DB size Limit
options:[] #additional stuffs for plugins, forwarding/auto modify body etc.
groups: [] #list of gourd IDs this user belongs to
mailboxes: [] #list of mailbox ID's
]
groups:[
id:
name: '' #descriptive only
address: ''#user name that will receive mail for all memeber of the group
options:[] #additional stuffs for plugins, forwarding/auto modify body etc.
]
]
mailboxes:[
id: '' #unique to all mailboxes
name: ''
ancestry: [] #descending array of ancestors e.g. ['inbox', 'work', 'do later']. Mucho Speedo when checking mail in top level mailbox
messages:[
id: '' #the messages unique ID
flags: [] #list of flags to apply
tags: [] # extra tags to apply, mainly for internal plugins
]
]
mail:[
id: '' #unique to server pk, links to mailboxes.messages.id
headers: [
key: ''
value: ''
]
rawHeaders: '' #for signed messages
body: [ # split into parts
code: ''
content: ''
]
rawBody: '' #full body text with all attachments, could be gridFS reference in future if space is an issue
]