Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | mod_admin_shell: Add port as a c2s/s2s:show column definition | Kim Alvefur | 2021-12-07 | 1 | -0/+7 |
| | | | | | Allows inferring whether Direct TLS was used, or perhaps which SRV record was chosen. Not shown by default. | ||||
* | mod_pep: Set correct jid attr on node disco items | Kim Alvefur | 2021-12-07 | 1 | -0/+1 |
| | | | | | It was previously set to the hostname, not the users bare JID which would be correct. | ||||
* | mod_pubsub: Allow specifying the JID of the pubsub service | Kim Alvefur | 2021-12-07 | 2 | -1/+2 |
| | | | | | This allows overriding it in cases where it is not equal to module.host, like say, in mod_pep | ||||
* | core.usermanager: Implement noop role writes on global authz provider | Kim Alvefur | 2021-12-06 | 1 | -0/+2 |
| | | | | So that the methods are there and don't cause an error. | ||||
* | mod_admin_shell: Handle global roles (pass host=*) | Kim Alvefur | 2021-12-06 | 1 | -1/+2 |
| | | | | Is it not odd that um.set_roles() takes `nil` to mean global? | ||||
* | mod_admin_shell: Only check that local users exist locally | Kim Alvefur | 2021-12-06 | 1 | -3/+1 |
| | |||||
* | mod_disco: Optionally return info on admin accounts to non-contacts | Kim Alvefur | 2021-04-15 | 1 | -2/+5 |
| | | | | | If you already know the account, from say the server contact info, then this confirms their admin status. | ||||
* | mod_disco: Advertise anonymous users | Kim Alvefur | 2020-07-04 | 1 | -0/+2 |
| | | | | Can these even be seen? | ||||
* | mod_disco: Advertise admin accounts as such via disco identity | Kim Alvefur | 2020-07-04 | 1 | -1/+6 |
| | |||||
* | mod_admin_shell: Support setting roles on hosts other than the users' | Kim Alvefur | 2021-12-06 | 1 | -4/+8 |
| | | | | | | | | Needed to e.g. grant admin rights on a component, or grant non-local users local privileges. Leave the same host syntax for convenience, since this might be the common case. | ||||
* | mod_admin_shell: Add command for updating roles user:roles(jid, roles) | Kim Alvefur | 2021-12-06 | 1 | -4/+19 |
| | | | | | This would allow e.g. granting admin status without changing the config and without a restart. | ||||
* | mod_admin_shell: Allow setting roles when creating user | Kim Alvefur | 2021-12-04 | 1 | -2/+12 |
| | |||||
* | net.server_epoll: Ensure calls to :write() return something | Kim Alvefur | 2021-12-06 | 1 | -1/+2 |
| | | | | | | | | | | With opportunistic writes enabled, writes can return what :onwritable() returns, thus :onwritable() should return something sensible at each spot. Should prevent whatever caused > Error writing to connection: (nil) Tho this was probably harmless | ||||
* | MUC: Allow modules a chance to act prior to room destruction | Kim Alvefur | 2021-12-05 | 2 | -7/+19 |
| | |||||
* | mod_cron: Expose the One Timer via module environment | Kim Alvefur | 2021-12-04 | 1 | -1/+1 |
| | | | | | This makes it easier to reschedule or otherwise manipulate the timer from e.g. the shell, which is handy for debugging. | ||||
* | mod_http_file_share: Fix to take retention time into account | Kim Alvefur | 2021-12-04 | 1 | -1/+2 |
| | | | | It was lost in 6f4790b8deec when switching to mod_cron. | ||||
* | mod_http_file_share: Improve consistency of terminology in logging | Kim Alvefur | 2021-12-04 | 1 | -8/+8 |
| | | | | | Prefer 'prune' over 'delete' since it more strongly implies removal of excess. | ||||
* | mod_http_file_share: Rename variable for clarity | Kim Alvefur | 2021-12-04 | 1 | -6/+6 |
| | |||||
* | mod_http_file_share: Fix deletion counter | Kim Alvefur | 2021-12-04 | 1 | -4/+3 |
| | | | | | Before aa60f4353001 each loop had its own counter, seems incrementing of one of them was lost. But only one is needed anyhow. | ||||
* | mod_http_file_share: Back out 876e1b6d6ae4 | Kim Alvefur | 2021-12-03 | 1 | -2/+2 |
| | |||||
* | mod_http_file_share: Recalculate total storage usage weekly instead of daily | Kim Alvefur | 2021-12-03 | 1 | -1/+1 |
| | | | | | | Before mod_cron this job ran less frequently than the upload removal job. Running them at the same frequency seems wasteful somehow, plus the total should not drift away from the true value that fast. | ||||
* | mod_cron: Add a 'weekly' job frequency | Kim Alvefur | 2021-12-03 | 4 | -2/+9 |
| | |||||
* | mod_cron: Initialize timestamp of new tasks to start of period | Kim Alvefur | 2021-12-03 | 2 | -5/+5 |
| | | | | | Makes it more generic so new periods (e.g. weekly etc) can be added easily. | ||||
* | mod_cron: Follow convention of imports at the top | Kim Alvefur | 2021-12-03 | 2 | -2/+4 |
| | |||||
* | mod_http_file_share: Keep track of total storage use across restarts | Kim Alvefur | 2021-12-03 | 1 | -0/+5 |
| | | | | | The value needs to be known in order to determine if additional uploads can be accepted. | ||||
* | mod_http_file_share: Fix measuring total storage use before it was known | Kim Alvefur | 2021-12-03 | 1 | -1/+1 |
| | | | | Passing nil to the metrics system causes errors later. | ||||
* | mod_smacks: Refactor, simplify, optimize | Kim Alvefur | 2021-12-03 | 1 | -4/+2 |
| | | | | | Since reply.attr.to will be the .attr.from of the input we can check this earlier and avoid constructing the reply at all. | ||||
* | mod_smacks: Use function to construct error reply | Kim Alvefur | 2021-12-03 | 1 | -5/+1 |
| | | | | Did error_reply() not exist when mod_smacks was first created? | ||||
* | mod_cron: Initialize daily tasks so they run around midnight UTC | Kim Alvefur | 2021-12-03 | 2 | -0/+9 |
| | | | | | | Eventually the goal is to have daily tasks run while there is little activity, but that will vary with the server and the usage patterns of its users. This is a start anyway. | ||||
* | mod_http_file_share: Keep global storage use accurate longer. | Kim Alvefur | 2021-11-30 | 1 | -5/+5 |
| | | | | | Merging those loops removes the miscounting that would occur in case a file could not be deleted, so no need to limit it to that case. | ||||
* | mod_http_file_share: Merge file expiry loops | Kim Alvefur | 2021-11-30 | 1 | -13/+7 |
| | | | | | | | | Not sure what the benefit of two separate loops was, perhaps reduced memory usage by allowing archive query state to be garbage collected before moving on to deleting files. Never measured so probably not so. This simplifies a bit. | ||||
* | mod_http_file_share: Limit query to time since last expiry | Kim Alvefur | 2021-11-30 | 1 | -2/+2 |
| | | | | | | This is probably a bad idea, as files that could not be deleted for some reason will not be tried again. I was just thinking of what the 'task' argument could be used for. | ||||
* | mod_admin_shell: List periodic tasks in module:info | Kim Alvefur | 2021-11-22 | 1 | -0/+2 |
| | |||||
* | mod_http_file_share: Switch to mod_cron for periodic tasks | Kim Alvefur | 2021-11-22 | 1 | -14/+5 |
| | |||||
* | mod_muc_mam: Switch to mod_cron for message expiry | Kim Alvefur | 2021-11-22 | 1 | -6/+1 |
| | |||||
* | mod_mam: Switch to new cron API | Kim Alvefur | 2021-11-21 | 1 | -6/+1 |
| | |||||
* | core.moduleapi: Add API for adding daily or hourly tasks via mod_cron | Kim Alvefur | 2021-11-21 | 2 | -0/+17 |
| | |||||
* | mod_cron: Initial commit of periodic task runner | Kim Alvefur | 2021-11-21 | 2 | -0/+157 |
| | | | | | | A number of modules now have periodic tasks that need to run, e.g. for cleaning out old messages or files. This has highlighted a need for coordinating and optimizing scheduling of such tasks. | ||||
* | mod_smacks: Remove obsolete comment | Kim Alvefur | 2021-12-02 | 1 | -5/+0 |
| | | | | It dates back to the initial commit in prosody-modules 9a7671720dec | ||||
* | mod_smacks: Avoid duplicated queueing using flag on session instead of stanza | Kim Alvefur | 2021-12-02 | 1 | -2/+4 |
| | | | | Mutating the stanza like this is Really Bad Practice. | ||||
* | mod_smacks: Remove dead conditional | Kim Alvefur | 2021-12-02 | 1 | -1/+1 |
| | | | | | `cached_stanza` can't be falsy because util.stanza.clone() would have thrown rather than return nil, or `._cached=true` would have. | ||||
* | mod_smacks: Ensure hibernating session is not connected | Kim Alvefur | 2021-12-02 | 1 | -0/+3 |
| | | | | | Turns out that if you destroy a session from inside prosody, it goes into hibernation but stays connected and continues processing stanzas. | ||||
* | mod_smacks: Reorder imports etc | Kim Alvefur | 2021-12-01 | 1 | -13/+15 |
| | | | | Mostly sorted by name of import (sort -k4) and grouped by kind | ||||
* | mod_smacks: Fix empty cache check | Kim Alvefur | 2021-12-01 | 1 | -1/+1 |
| | | | | | In Lua, every value except `nil` and `false` are considered true in boolean expressions, even `0` as here, which means this was dead code. | ||||
* | mod_smacks: Use stanza type checking function for correctness | Kim Alvefur | 2021-12-01 | 1 | -1/+1 |
| | | | | | Non-stanza tables with an 'attr' field might be rare in Prosody, but better to be Correct | ||||
* | mod_smacks: Remove redundant fields | Kim Alvefur | 2021-12-01 | 1 | -7/+1 |
| | | | | | | Given that the registry is scoped per user and the module is scoped per host, there seems no point to checking or storing both username and host here. | ||||
* | mod_smacks: Factor out formatting of 'h' value | Kim Alvefur | 2021-12-01 | 1 | -4/+6 |
| | |||||
* | mod_smacks: Remove dead legacy code for 0.10 | Kim Alvefur | 2021-12-01 | 1 | -17/+0 |
| | |||||
* | mod_smacks: Use new pre-session-close event instead of monkeypatch | Kim Alvefur | 2021-12-01 | 1 | -13/+16 |
| | | | | Much cleaner. | ||||
* | mod_c2s: Add event just before closing as session | Kim Alvefur | 2021-12-01 | 1 | -0/+3 |
| | | | | | | To allow modules to do things just before the session is closed. The '(pre-)resource-unbind' events are fired after the stream is closed, leaving no way to send something. |