Mercurial > prosody-modules
comparison mod_firewall/conditions.lib.lua @ 963:c7fca2c9e24f
mod_firewall/conditions: Don't use table.insert, so things are happy when compile_jid_match() returns nil
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Fri, 05 Apr 2013 19:18:41 +0100 |
parents | 93ffa3ffc66f |
children | 04e85eb3dfef |
comparison
equal
deleted
inserted
replaced
962:93ffa3ffc66f | 963:c7fca2c9e24f |
---|---|
39 end | 39 end |
40 end | 40 end |
41 | 41 |
42 local function compile_jid_match(which, match_jid) | 42 local function compile_jid_match(which, match_jid) |
43 local match_node, match_host, match_resource = jid.split(match_jid); | 43 local match_node, match_host, match_resource = jid.split(match_jid); |
44 local conditions = { | 44 local conditions = {}; |
45 compile_jid_match_part(which.."_node", match_node); | 45 conditions[#conditions+1] = compile_jid_match_part(which.."_node", match_node); |
46 compile_jid_match_part(which.."_host", match_host); | 46 conditions[#conditions+1] = compile_jid_match_part(which.."_host", match_host); |
47 match_resource and compile_jid_match_part(which.."_resource", match_resource) or nil; | 47 if match_resource then |
48 }; | 48 conditions[#conditions+1] = compile_jid_match_part(which.."_resource", match_resource); |
49 end | |
49 return table.concat(conditions, " and "); | 50 return table.concat(conditions, " and "); |
50 end | 51 end |
51 | 52 |
52 function condition_handlers.TO(to) | 53 function condition_handlers.TO(to) |
53 return compile_jid_match("to", to), { "split_to" }; | 54 return compile_jid_match("to", to), { "split_to" }; |