Software /
code /
prosody-modules
Annotate
mod_muc_reserve_nick_pattern/mod_muc_reserve_nick_pattern.lua @ 5181:2c6acf2d6fd4
mod_http_oauth2: Fix removal of consumed authorization codes
Fixes mod_http_oauth2.lua:34: bad argument #2 to 'difftime' (number expected, got nil)
The extra preceding argument to :set stored the client-id#code as a value
instead of clearing the key, and then later in the periodic cleanup
timer this string would be indexed, producing a nil and a traceback
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 01 Mar 2023 21:11:48 +0100 |
parent | 5172:dc6a10629670 |
rev | line source |
---|---|
5172
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
1 local jid = require "util.jid"; |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
2 local st = require "util.stanza"; |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
3 |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
4 local nick_patterns = module:get_option_array("muc_reserve_nick_patterns", {}); |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
5 |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
6 module:hook("muc-occupant-pre-join", function (event) |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
7 local nick = jid.resource(event.occupant.nick); |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
8 for k, nick_pattern in pairs(nick_patterns) do |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
9 if nick:match(nick_pattern) then |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
10 local reply = st.error_reply(event.stanza, "modify", "conflict", "Unacceptable nickname, please try another"); |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
11 module:send(reply); |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
12 return true; |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
13 end |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
14 end |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
15 end); |