X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=plugins%2Fmod_auth_anonymous.lua;h=9d0896e5b16e8a7c25ff5c88c0a6eca78c6fcd4e;hb=6d7a9cba5240a142b1a1e397e6248cf13c261cca;hp=e0a6a6c7f1acf750a514c61fa893ae636fe621ae;hpb=c13cc8c535fd33a0fc922a6b6abf5c88e14db4d4;p=prosody.git diff --git a/plugins/mod_auth_anonymous.lua b/plugins/mod_auth_anonymous.lua index e0a6a6c7..9d0896e5 100644 --- a/plugins/mod_auth_anonymous.lua +++ b/plugins/mod_auth_anonymous.lua @@ -1,17 +1,12 @@ -- Prosody IM -- Copyright (C) 2008-2010 Matthew Wild -- Copyright (C) 2008-2010 Waqas Hussain --- Copyright (C) 2010 Jeff Mitchell -- -- This project is MIT/X11 licensed. Please see the -- COPYING file in the source package for more information. -- -local log = require "util.logger".init("usermanager"); -local type = type; -local ipairs = ipairs; -local jid_bare = require "util.jid".bare; -local config = require "core.configmanager"; +local log = require "util.logger".init("auth_anonymous"); local new_sasl = require "util.sasl".new; local datamanager = require "util.datamanager"; @@ -25,7 +20,7 @@ function new_default_provider(host) function provider.get_password(username) return nil, "Password not available."; end - + function provider.set_password(username, password) return nil, "Password based auth not supported."; end @@ -35,31 +30,19 @@ function new_default_provider(host) end function provider.create_user(username, password) - return nil, "Account creation/modification not supported."; end + return nil, "Account creation/modification not supported."; end function provider.get_sasl_handler() local realm = module:get_option("sasl_realm") or module.host; local anonymous_authentication_profile = { - anonymous = function(username, realm) + anonymous = function(sasl, username, realm) return true; -- for normal usage you should always return true here end }; return new_sasl(realm, anonymous_authentication_profile); end - function provider.is_admin(jid) - local admins = config.get(host, "core", "admins"); - if admins ~= config.get("*", "core", "admins") and type(admins) == "table" then - jid = jid_bare(jid); - for _,admin in ipairs(admins) do - if admin == jid then return true; end - end - elseif admins then - log("error", "Option 'admins' for host '%s' is not a table", host); - end - return is_admin(jid); -- Test whether it's a global admin instead - end return provider; end