forked from minetest-mods/xban2
First commit.
This commit is contained in:
45
doc/dbformat.txt
Normal file
45
doc/dbformat.txt
Normal file
@ -0,0 +1,45 @@
|
||||
|
||||
Database is a regular Lua script that returns a table.
|
||||
|
||||
Table has a single named field `timestamp' containing the time_t the
|
||||
DB was last saved. It's not used in the mod and is only meant for
|
||||
external use (I don't find filesystem timestamps too reliable).
|
||||
|
||||
Next is a simple array (number indices) of entries.
|
||||
|
||||
Each entry contains following fields:
|
||||
|
||||
[1] = {
|
||||
-- Names/IPs associated with this entry
|
||||
names = {
|
||||
["foo"] = true,
|
||||
["bar"] = true,
|
||||
["123.45.67.89"] = true,
|
||||
},
|
||||
banned = true, -- Whether this user is banned
|
||||
-- Other fields do not apply if false
|
||||
time = 12341234, -- Time of last ban (*1)
|
||||
expires = 43214321 -- Time at which ban expires (*2)
|
||||
-- If nil, permanent ban
|
||||
reason = "asdf", -- Reason for ban
|
||||
source = "qwerty", -- Source of ban (*2)
|
||||
record = {
|
||||
[1] = {
|
||||
source = "asdf",
|
||||
reason = "qwerty",
|
||||
time = 12341234,
|
||||
expires = 43214321,
|
||||
},
|
||||
[1] = {
|
||||
source = "asdf",
|
||||
reason = "Unbanned", -- When unbanned
|
||||
time = 12341234,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
Notes:
|
||||
(*1) All times are expressed in whatever unit `os.time()' uses
|
||||
(`time_t' on most (all?) systems).
|
||||
(*2) Mods using the xban API are advised to use the "modname:source"
|
||||
format for `source' (for example: "anticheat:main").
|
Reference in New Issue
Block a user