local states = ProcessingFlow[1].Destination
local supported = ProcessingFlow[2].Destination.TlsCapabilities
local supported_map = {}
for _, v in pairs(supported) do
supported_map[v.TlsName] = v.IsSupported
end
local enabled = {}
local result = cjson.json_object_new_array()
local map = {
['TLS_1_0_Enabled'] = 'TLS1.0',
['TLS_1_1_Enabled'] = 'TLS1.1',
['TLS_1_2_Enabled'] = 'TLS1.2',
['TLS_1_3_Enabled'] = 'TLS1.3'
}
local tls_map = {
['TLS1.0'] = '1.0',
['TLS1.1'] = '1.1',
['TLS1.2'] = '1.2',
['TLS1.3'] = '1.3'
}
for k, v in pairs(map) do
if states[k] then
table.insert(enabled, v)
end
end
table.sort(enabled)
for _, v in pairs(enabled) do
if supported_map[v] then
result[#result + 1] = tls_map[v]
end
end
return result