Software /
code /
prosody-modules
Annotate
mod_auth_any/mod_auth_any.lua @ 4989:b74d592df9e2
mod_http_muc_log: Remove dead code
This might be something left over since a different variant where the
loop went like `for n = i-1, i-100, -1 do ... end` i.e. it went trough a
fixed number of items instead of all the page until the current message.
Then it would have needed something to stop going over the end, but
since the checks are simple it shouldn't be much of a problem looping
over even a very busy day.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Tue, 16 Aug 2022 01:27:59 +0200 |
parent | 2439:1f7820f68868 |
rev | line source |
---|---|
1294
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
1 -- Prosody IM |
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
2 -- Copyright (C) 2008-2010 Matthew Wild |
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 -- Copyright (C) 2008-2010 Waqas Hussain |
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
4 -- |
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 -- This project is MIT/X11 licensed. Please see the |
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
6 -- COPYING file in the source package for more information. |
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
7 -- |
2437
75be377b74ea
mod_auth_any: Ignore unused arguments, useful to show what arguments are given
Kim Alvefur <zash@zash.se>
parents:
1343
diff
changeset
|
8 -- luacheck: ignore 212 |
1294
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
9 |
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
10 local datamanager = require "util.datamanager"; |
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
11 local new_sasl = require "util.sasl".new; |
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
12 |
2438
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
13 local host = module.host; |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
14 local provider = { name = "any" }; |
1294
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
15 |
2438
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
16 function provider.test_password(username, password) |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
17 return true; |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
18 end |
1294
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
19 |
2438
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
20 function provider.set_password(username, password) |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
21 local account = datamanager.load(username, host, "accounts"); |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
22 if account then |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
23 account.password = password; |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
24 return datamanager.store(username, host, "accounts", account); |
1294
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
25 end |
2438
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
26 return nil, "Account not available."; |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
27 end |
1294
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
28 |
2438
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
29 function provider.user_exists(username) |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
30 return true; |
1294
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
31 end |
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
32 |
2438
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
33 function provider.create_user(username, password) |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
34 return datamanager.store(username, host, "accounts", {password = password}); |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
35 end |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
36 |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
37 function provider.delete_user(username) |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
38 return datamanager.store(username, host, "accounts", nil); |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
39 end |
1294
bb1fb54360ab
mod_auth_any: Allows any username/password to connect
Waqas Hussain <waqas20@gmail.com>, Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
40 |
2438
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
41 function provider.get_sasl_handler() |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
42 local getpass_authentication_profile = { |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
43 plain_test = function(sasl, username, password, realm) |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
44 return true, true; |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
45 end |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
46 }; |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
47 return new_sasl(module.host, getpass_authentication_profile); |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
48 end |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
49 |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
50 module:add_item("auth-provider", provider); |
a528627e45ab
mod_auth_any: Remove provider constructor, it's only called once anyways
Kim Alvefur <zash@zash.se>
parents:
2437
diff
changeset
|
51 |