forked from tfar/XMPP-Features
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcompliance.lua
More file actions
63 lines (61 loc) · 3.66 KB
/
compliance.lua
File metadata and controls
63 lines (61 loc) · 3.66 KB
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
58
59
60
61
62
63
-- compliance suites
if type == "server" then
xep0073 = rfc3920 and rfc3921 and xep0030 and xep0115 and "required level" or false
xep0073 = xep0073 and xep0077 and xep0078 and xep0086 and "recommended level" or xep0073 or false
xep0212 = rfc6120 and rfc6121 and xep0030 and "required level" or false
xep0212 = xep0212 and xep0078 and xep0086 and xep0138 and "recommended level" or xep0212 or false
xep0216 = xep0212 and xep0016 and xep0045 and xep0054 and "required level" or false
xep0216 = xep0216 and xep0163 and "recommended level" or xep0216 or false
xep0243 = rfc3920 and rfc3921 and xep0030 and "Core Server" or false
xep0243 = xep0243 and xep0016 and xep0191 and xep0045 and xep0054 and xep0124 and xep0206 and xep0163 and "Advanced Server" or xep0243 or false
xep0270 = rfc3920 and rfc3921 and xep0030 and xep0114 and "Core Server" or false
xep0270 = xep0270 and xep0016 and xep0191 and xep0124 and xep0206 and xep0054 and xep0163 and xep0045 and "Advanced Server" or xep0270 or false
xep0302 = rfc6120 and rfc6121 and rfc6122 and xep0030 and xep0114 and "Core Server" or false
xep0302 = xep0302 and xep0045 and xep0054 and xep0115 and xep0124 and xep0163 and xep0191 and xep0198 and xep0206 and "Advanced Server" or xep0302 or false
elseif type == "client" then
xep0073 = rfc3920 and rfc3921 and xep0030 and xep0115 and "required level" or false
xep0073 = xep0073 and xep0077 and xep0086 and "recommended level" or xep0073 or false
xep0117 = xep0073 and xep0045 and xep0071 and xep0096 and xep0115 and "required level" or false
xep0211 = rfc6120 and rfc6121 and xep0030 and "required level" or false
xep0211 = xep0211 and xep0106 and xep0115 and xep0138 and "recommended level" or xep0211 or false
xep0213 = xep0211 and xep0045 and xep0085 and "required level" or false
xep0213 = xep0213 and xep0016 and xep0054 and xep0155 and "recommended level" or xep0213 or false
xep0242 = rfc3920 and rfc3921 and xep0030 and xep0115 and "Core Client" or false
xep0242 = xep0242 and xep0016 and xep0191 and xep0045 and xep0054 and xep0085 and "Advanced Client" or xep0242 or false
xep0270 = rfc3920 and rfc3921 and xep0030 and xep0115 and "Core Client" or false
xep0270 = xep0270 and xep0054 and xep0163 and xep0045 and xep0085 and "Advanced Client" or xep0270 or false
xep0302 = rfc6120 and rfc6121 and rfc6122 and xep0030 and xep0115 and "Core Client" or false
xep0302 = xep0302 and xep0045 and xep0054 and xep0085 and xep0184 and xep0163 and xep0198 and "Advanced Client" or xep0302 or false
local xep0375_core = rfc6120 and rfc6122 and xep0030 and xep0115
local xep0375_advanced = xep0375_core and xep0163
if xep0375_advanced then
xep0375 = "Advanced Client"
elseif xep0375_core then
xep0375 = "Core Client"
else
xep0375 = false
end
if xep0375 then
local xep0375_web_core = xep0375_core and rfc7395 or (xep0124 and xep0206)
local xep0375_web_advanced = xep0375_web_core and xep0375_advanced
if xep0375_web_advanced then
xep0375 = xep0375 .. " + Advanced Web"
elseif xep0375_web_core then
xep0375 = xep0375 .. " + Core Web"
end
local xep0375_im_core = xep0375_core and rfc6121 and xep0084 and (xep0280 or xep0313) and (xep0045 or xep0369)
local xep0375_im_advanced = xep0375_im_core and xep0375_advanced and xep0375_im_core and xep0191 and xep0048 and xep0198 and xep0313
if xep0375_im_advanced then
xep0375 = xep0375 .. " + Advanced IM"
elseif xep0375_im_core then
xep0375 = xep0375 .. " + Core IM"
end
local xep0375_mobile_core = xep0375_core and xep0198 and xep0352
local xep0375_mobile_advanced = xep0375_mobile_core and xep0375_advanced and xep0357
if xep0375_mobile_advanced then
xep0375 = xep0375 .. " + Advanced Mobile"
elseif xep0375_mobile_core then
xep0375 = xep0375 .. " + Core Mobile"
end
end
end