aboutsummaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2010-07-16 15:10:45 +0100
committerMatthew Wild <mwild1@gmail.com>2010-07-16 15:10:45 +0100
commite9e7b34db99c880ce1f24b6b3d04dd0a61462dfe (patch)
tree7cdd23919741f2f7be06696791393087f66ffac7 /util
parented7bac60e1150960a169f5b280583d173c2497aa (diff)
parente21c59154e07a8c2fca2a03f57b92e16718006fa (diff)
downloadprosody-e9e7b34db99c880ce1f24b6b3d04dd0a61462dfe.tar.gz
prosody-e9e7b34db99c880ce1f24b6b3d04dd0a61462dfe.zip
Merge Zash->trunk
Diffstat (limited to 'util')
-rw-r--r--util/jid.lua13
1 files changed, 13 insertions, 0 deletions
diff --git a/util/jid.lua b/util/jid.lua
index ba9730fa..9128ce4e 100644
--- a/util/jid.lua
+++ b/util/jid.lua
@@ -78,4 +78,17 @@ function join(node, host, resource)
return nil; -- Invalid JID
end
+function compare(jid, acl)
+ -- compare jid to single acl rule
+ -- TODO compare to table of rules?
+ local jid_node, jid_host, jid_resource = _split(jid);
+ local acl_node, acl_host, acl_resource = _split(acl);
+ if ((acl_node ~= nil and acl_node == jid_node) or acl_node == nil) and
+ ((acl_host ~= nil and acl_host == jid_host) or acl_host == nil) and
+ ((acl_resource ~= nil and acl_resource == jid_resource) or acl_resource == nil) then
+ return true
+ end
+ return false
+end
+
return _M;