Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | configmanager: Fix linter issues | Matthew Wild | 2023-12-08 | 1 | -2/+10 | |
| | | ||||||
* | | configmanager: Support for appending to existing config options | Matthew Wild | 2023-12-08 | 1 | -3/+56 | |
| | | | | | | | | ...and some other useful operations | |||||
* | | configmanager: Make _G accessible via `Lua` variable, deprecate direct access | Matthew Wild | 2023-12-08 | 1 | -1/+12 | |
| | | ||||||
* | | configmanager: Allow referencing previously-set options in the config file | Matthew Wild | 2023-12-08 | 1 | -0/+14 | |
| | | ||||||
* | | mod_user_account_management: Clear pending deletion if account re-enabled | Matthew Wild | 2023-12-07 | 1 | -0/+6 | |
| | | ||||||
* | | mod_saslauth: Fire event per SASL step | Matthew Wild | 2023-12-05 | 1 | -2/+5 | |
| | | | | | | | | | | This matches the behaviour of the newer mod_sasl2 implementation. It allows plugins to observe (and potentially, with caution, modify) the SASL exchange. | |||||
* | | util.jsonschema: Return basic structured validation response | Kim Alvefur | 2023-12-02 | 3 | -115/+218 | |
| | | ||||||
* | | mod_c2s: Make c2s_timeout timer reachable to allow access from other modules | Kim Alvefur | 2023-12-03 | 1 | -1/+3 | |
| | | | | | | | | E.g. the timeout could be extended under certain conditions. | |||||
* | | tools: Add a tool for comparing DOAP to the latest XEP versions | Kim Alvefur | 2023-12-03 | 1 | -0/+14 | |
| | | | | | | | | Needs wget, awk, sed and xml2 | |||||
* | | mod_s2s: Close connection on smacks timeout | Kim Alvefur | 2023-12-02 | 2 | -0/+7 | |
| | | | | | | | | | | | | | | | | | | | | | | This merges the mod_s2s_smacks_timeout behavior from prosody-modules This event is fired by mod_smacks when the connection has not responded to an ack-request for a period of time defaulting to 30 seconds, indicating that the connection has become stuck or non-responsive. Closing it prevents routing further messages via this connection and frees resources. A stuck connection may otherwise remain until for a time determined by the OS TCP subsystem, which can be quite long. | |||||
* | | mod_saslauth: Fire event at start of authentication attempt | Kim Alvefur | 2023-12-01 | 1 | -0/+6 | |
| | | | | | | | | | | | | As extension point for rate limiting and similar checks, so they can hook a single event instead of <{sasl1}auth> or stream features, which might not be fired in case of SASL2 or e.g. HTTP based login. | |||||
* | | net.http.server: Fix whitespace-ignoring syntax | Kim Alvefur | 2023-12-01 | 1 | -2/+2 | |
| | | ||||||
* | | Merge 0.12->trunk | Kim Alvefur | 2023-12-01 | 2 | -1/+34 | |
|\| | ||||||
| * | net.http.parser: Reject overlarge header section earlier | Kim Alvefur | 2023-08-23 | 2 | -1/+34 | |
| | | | | | | | | This case would eventually be rejected by the buffer size limit. | |||||
* | | lua-format: Let simple things be one line | Kim Alvefur | 2023-11-30 | 1 | -2/+2 | |
| | | | | | | | | This doesn't really handle nesting all that nicely tho. | |||||
* | | lua-format: Further tweaks | Kim Alvefur | 2023-01-18 | 1 | -3/+3 | |
| | | | | | | | | | | Keeping things a single line makes very deeply nested things "pyramids" a single line, which makes them hard to read. | |||||
* | | lua-format: Add new settings | Kim Alvefur | 2021-07-28 | 1 | -0/+6 | |
| | | ||||||
* | | lua-format: Tweaks attempting to fit our code style | Kim Alvefur | 2020-07-07 | 1 | -12/+12 | |
| | | ||||||
* | | lua-format: Check in defaults | Kim Alvefur | 2020-07-07 | 1 | -0/+26 | |
| | | | | | | | | | | | | | | By starting with the built-in defaults, we get a nice history of differences from those as we figure out what settings suit us Sorted make comparisons easier. | |||||
* | | mod_user_account_management: Fire events with a fake (not destroyed) session | Matthew Wild | 2023-11-30 | 1 | -3/+24 | |
| | | | | | | | | | | | | | | Previously these events fired after the session had been destroyed, which removes many of the useful properties. The ones I chose to preserve here are the ones used by the community module mod_audit, which seems like a good baseline. | |||||
* | | mod_cron: Rebuild with new LuaFormatter settings (tabs!) | Kim Alvefur | 2023-11-30 | 1 | -77/+59 | |
| | | ||||||
* | | util.datamanager: Fix missing pack format when reading first index entry | Kim Alvefur | 2023-11-30 | 1 | -1/+1 | |
| | | | | | | | | Thanks MattJ | |||||
* | | mod_user_account_management: Add support for soft-deletion of accounts via IBR | Matthew Wild | 2023-11-30 | 1 | -13/+137 | |
| | | | | | | | | | | | | | | | | | | | | | | | | When registration_delete_grace_period is set, accounts will be disabled for the specified grace period before they are fully deleted. During the grace period, accounts can be restored with the user:restore() shell command. The primary purpose is to prevent accidental or malicious deletion of a user's account, which is traditionally very easy for any XMPP client to do with a single stanza. | |||||
* | | moduleapi: Log error message when ambiguous period spec is found in config | Matthew Wild | 2023-11-30 | 1 | -1/+9 | |
| | | ||||||
* | | util.human.io: Don't accept ambiguous durations by default | Matthew Wild | 2023-11-30 | 2 | -4/+49 | |
| | | | | | | | | | | The new method parse_duration_lax() exports the old behaviour, mainly for compatibility purposes. | |||||
* | | mod_cron: Update Teal source and rebuild | Matthew Wild | 2023-11-30 | 2 | -77/+101 | |
| | | ||||||
* | | mod_cron: Rename variable to fix shadowing (#luacheck) | Matthew Wild | 2023-11-30 | 1 | -2/+2 | |
| | | ||||||
* | | mod_cron: Add shell command to list registered cron tasks with status | Matthew Wild | 2023-11-30 | 1 | -0/+28 | |
| | | ||||||
* | | mod_saslauth: Allow plugins to override return SASL condition/text | Matthew Wild | 2023-11-30 | 1 | -1/+3 | |
| | | ||||||
* | | luacheckrc, mod_http_file_share: Update for module API change (once->on_ready) | Matthew Wild | 2023-11-30 | 2 | -2/+2 | |
| | | ||||||
* | | modulemanager: Allow modules to expose module.ready - to be called after init | Matthew Wild | 2023-11-30 | 1 | -0/+4 | |
| | | | | | | | | | | | | | | | | This is a shortcut for module:on_ready() which exposes the functionality in an idiomatic way consistent with module.load, module.unload, etc. module.ready runs when the module is loaded and the server has finished starting up. | |||||
* | | moduleapi: Rename :once() to :on_ready() for clarity | Matthew Wild | 2023-11-30 | 1 | -1/+7 | |
| | | | | | | | | | | | | | | 'Once' is ambiguous - once per what? on_ready() executes its parameter when the module is loaded *and* the server has finished starting. | |||||
* | | usermanager, mod_auth_internal_hashed: Support metadata when disabling a user | Matthew Wild | 2023-11-30 | 2 | -4/+5 | |
| | | | | | | | | | | This allows us to store a time, actor, comment and/or reason why an account was disabled, which seems a generally useful thing to support. | |||||
* | | util.datamanager: Load first item into index earlier | Kim Alvefur | 2023-11-27 | 1 | -1/+2 | |
| | | | | | | | | Should get rid of fseek() call | |||||
* | | mod_mam: Use for loop in metadata query | Kim Alvefur | 2023-11-26 | 1 | -4/+2 | |
| | | | | | | | | | | | | Some storage drivers will perform cleanup after the last iteration, but if only one step is taken this might be delayed until the garbage collector gets to it. | |||||
* | | mod_tokenauth: Ignore invalid grants in storage that have no id | Matthew Wild | 2023-11-29 | 1 | -1/+1 | |
| | | ||||||
* | | mod_invites: Fix linter issues | Matthew Wild | 2023-11-29 | 1 | -4/+4 | |
| | | ||||||
* | | mod_admin_shell: Fix linter issues | Matthew Wild | 2023-11-29 | 1 | -24/+26 | |
| | | ||||||
* | | mod_invites: Use new shell-command API | Matthew Wild | 2023-11-29 | 1 | -22/+25 | |
| | | ||||||
* | | mod_admin_shell: Remove verbose logging | Matthew Wild | 2023-11-29 | 1 | -4/+0 | |
| | | ||||||
* | | mod_admin_shell: Remove timer:info() (it's been debug:timers() for some time) | Matthew Wild | 2023-11-29 | 1 | -3/+0 | |
| | | ||||||
* | | mod_admin_shell: Support for 'shell-command' items (global and per-host) | Matthew Wild | 2023-11-29 | 1 | -0/+169 | |
| | | | | | | | | | | | | This should simplify adding shell commands from other modules, which will reduce the growth of mod_admin_shell and make it easier for community modules to expose commands too. | |||||
* | | mod_admin_shell: Refactor help to data structures for extensibility | Matthew Wild | 2023-11-29 | 1 | -157/+239 | |
| | | | | | | | | | | This makes it easier for commands added by other modules to add to the help output, for example. | |||||
* | | migrator: Add an escape hatch to allow arbitrary config options | Kim Alvefur | 2023-11-27 | 1 | -0/+5 | |
| | | | | | | | | | | | | | | | | | | | | | | | | Previously only SQL settings and the 'path' for internal storage could be set, and only for SQL and internal storage. input { type = "whatever"; config = { whatever_foobar = "something" } } | |||||
* | | util.poll: Rename things to clarify poll(2) limits | Kim Alvefur | 2023-11-27 | 1 | -5/+7 | |
| | | | | | | | | | | | | With epoll(7), MAX_EVENTS controls how many events can be retrieved in one epoll_wait call, while with poll(2) this MAX_WATCHED controls how many sockets or other FDs can be watched at once. | |||||
* | | mod_storage_internal: Clear archive item count cache after experimental trim | Kim Alvefur | 2023-11-26 | 1 | -1/+3 | |
| | | | | | | | | | | | | | | The previous count would be invalid at this point. Should be possible to math out how many items are left, but this is left as future work. | |||||
* | | mod_blocklist: Remove weak cache (and increase default LRU cache size) | Kim Alvefur | 2023-11-26 | 1 | -18/+10 | |
| | | | | | | | | | | | | | | Weak tables are said to have suboptimal performance, so we might as well get replace it with an increased default LRU cache size. Sorry about the 'and' | |||||
* | | mod_storage_internal: Close lazy-loading list abstraction after trim | Kim Alvefur | 2023-11-26 | 1 | -0/+6 | |
| | | | | | | | | Should be done here too. | |||||
* | | mod_storage_internal: Only close lazy-loading list store abstractions | Kim Alvefur | 2023-11-26 | 1 | -1/+3 | |
| | | | | | | | | | | Since datamanager can fall back to the old method of loading the whole list, which wouldn't come with a :close method. | |||||
* | | util.startup: Use prosody. module namespace | Kim Alvefur | 2023-11-24 | 1 | -1/+1 | |
| | | | | | | | | Maybe we need some sort of lint for this? |