aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* util.sasl: Preserve 'userdata' field between clonesorigin/13.013.0Matthew Wild3 days1-3/+8
| | | | | | | | | | | | | | The :clean_clone() method is designed to provide a new cloned SASL handler, to be used when starting a fresh SASL negotiation on an existing connection. The userdata field is currently populated by mod_saslauth with the "read-only" information that the channel binding methods need to do their stuff. When :clean_clone() does not preserve this, it causes tracebacks in the cb profile handlers due to the property being nil. This does mean that SASL handlers should now not be reused (even when cloned) across different connections, if they ever could.
* mod_external_services: Also use TURN REST credential algo for 'turns' ↵Matthew Wild8 days1-0/+1
| | | | (thanks moreroid)
* net.server_epoll: Improve readability of DANE noiseKim Alvefur10 days1-1/+1
| | | | Serialized Lua is not the most readable form of TLSA records.
* certmanager: Add more debug logging around cert indexingMatthew Wild13 days1-2/+6
| | | | | Currently it's not obvious which directories have been indexed (especially when the resulting index is empty), or why certain files have been skipped.
* mod_component: Don't return error reply for errors, fixes #1897Kim Alvefur2025-02-221-1/+3
|
* mod_bosh,mod_websocket: Don't load mod_http_altconnect in global contextKim Alvefur2025-02-222-2/+6
| | | | | | It blocked loading on VirtualHosts since it was already loaded globally Thanks eTaurus
* prosodyctl: check features: stop searching after finding a matching componentMatthew Wild2025-02-221-0/+1
|
* core.configmanager: Pass name and line number in contextKim Alvefur2025-02-221-5/+4
| | | | | | | Delays the string interpolation until the warning is logged, which may slightly lower memory usage. Allows retrieving the filename and line number easily.
* core.configmanager: Fix reporting delayed warnings from global sectionKim Alvefur2025-02-221-10/+5
| | | | | | | | | | | | | | A Credential in the global section would be stored at delayed_warnings["*/secret"], but get("example.com","secret") would look for delayed_warnings["example.com/secret"] Storing the warnings in the config itself has the unfortunate side-effect that the config now contains util.error objects, which may be awkward if something bypasses get(). Should rawget() also do this filtering? getconfig() too? Currently this only affects prosodyctl, so maybe it won't be much of a problem.
* core.configmanager: Remove dependency on 'prosody' global for CredentialKim Alvefur2025-02-222-4/+21
| | | | | Minimizing dependencies on global state is nice, as it makes using configmanager outside of Prosody easier.
* mod_invites: Hide --group flag unless mod_invites_groups is enabledMatthew Wild2025-02-171-1/+6
| | | | | | The WIP groups support is not complete yet, and won't work without extra modules (which are not yet a part of Prosody). For now we hide --group support unless mod_invites_groups (community module) is specified in modules_enabled.
* mod_invites: Fix traceback when no flags passedMatthew Wild2025-02-171-6/+6
|
* mod_invites: Deprecate 'mod_invites generate' in favour of new shell commandsMatthew Wild2025-02-171-108/+61
|
* mod_admin_shell: Improve help listing in non-REPL modeMatthew Wild2025-02-171-2/+36
|
* mod_admin_shell: Fix simple command execution (e.g. help)Matthew Wild2025-02-171-3/+15
|
* mod_admin_shell: Set flag on session when in REPL modeMatthew Wild2025-02-171-0/+4
|
* mod_admin_shell: Improved error handling for shell-invoked commandsMatthew Wild2025-02-171-5/+25
|
* util.argparse: Add strict mode + testsMatthew Wild2025-02-172-9/+56
|
* mod_admin_shell, util.prosodyctl.shell: Process command-line args on ↵Matthew Wild2025-02-172-29/+96
| | | | | | | | | | | | server-side, with argparse support This allow a shell-command to provide a 'flags' field, which will automatically cause the parameters to be fed through argparse. The rationale is to make it easier for more complex commands to be invoked from the command line (`prosodyctl shell foo bar ...`). Until now they were limited to accepting a list of strings, and any complex argument processing was non-standard and awkward to implement.
* util.argparse: Optionally continue processing past positional parametersMatthew Wild2025-02-171-30/+40
|
* util.x509: Per RFC 9525, remove obsolete Common Name checkKim Alvefur2024-02-113-44/+9
|
* prosodyctl: check features: Fix traceback for components with no recommended ↵Matthew Wild2025-02-171-13/+15
| | | | modules (thanks Menel, riau)
* mod_invites: Fix storing --group (thanks lissine)Kim Alvefur2025-02-171-1/+1
| | | | | | | This made it ignore `--group` completely, but if you incorrectly used `--group foo` it would store `groups=true`. Introduced in 9ba11ef91ce4
* util.prosodyctl.check: Recognise http_upload_external as a file upload serviceMatthew Wild2025-02-161-1/+1
|
* util.prosodyctl.check: Fix typo in informational messageMatthew Wild2025-02-161-1/+1
|
* mod_bosh, mod_websocket: Add soft dependency on mod_http_altconnectMatthew Wild2025-02-162-0/+4
|
* moduleapi: Allow soft dependencies via module:depends(mod, true)Matthew Wild2025-02-162-2/+7
|
* mod_http_altconnect: Imported from prosody-modules 6d5a19bdd718 w/changesMatthew Wild2025-02-163-0/+55
| | | | | | | Changes from community version: - Add options to allow explicit control over whether BOSH/WS is advertised - Always serve XML at /host-meta (no guessing based on Accept), least surprising
* prosodyctl: check features: check for mod_muc_mam on MUC componentsMatthew Wild2025-02-161-4/+64
|
* util.sql: Don't send SQLCipher key to Postgres or MySQL (thanks gllmhyt)Kim Alvefur2025-02-161-1/+1
| | | | | | This was copied from util.sqlite3 which only deals with SQLite3, but here Postgres or MySQL are also possibilities, which wouldn't support this.
* mod_http_file_share: Persist total storage usage when it increases (fixes #1891)Matthew Wild2025-02-151-0/+1
|
* CHANGES: add 'prosodyctl check features'Matthew Wild2025-02-151-0/+1
|
* prosodyctl: check: Fix variable name (thanks luacheck)Matthew Wild2025-02-151-1/+1
|
* prosodyctl: check: Skip DNS checks for known invalid domains (fixes traceback)Matthew Wild2025-02-151-1/+5
|
* prosodyctl: check features: Check for recommended feature availabilityMatthew Wild2025-02-151-0/+232
| | | | | | Inspired by mod_compliance_*, this command will help people (especially those with older configs, upgrading from previous releases) learn what features their Prosody configuration may be missing.
* util.prosodyctl.check: Sort hosts in iterator for more stable outputMatthew Wild2025-02-151-1/+1
|
* prosodyctl: check: Fix indentation in warning messageMatthew Wild2025-02-151-2/+2
|
* core.certmanager: Move LuaSec verification tweaks to mod_s2sKim Alvefur2025-02-152-4/+8
| | | | | These two settings are only really needed for XMPP server-to-server connections.
* mod_cloud_notify, mod_cron, mod_invites: Add 'prosody.' prefix to requiresMatthew Wild2025-02-153-10/+10
|
* .semgrep.yml: Identify unprefixed module importsMatthew Wild2025-02-151-0/+9
|
* doap: Update XEP-0421, only editorial changes and promoted to StableKim Alvefur2025-02-141-1/+1
|
* doap: Replace references to 'trunk'Kim Alvefur2025-02-141-4/+4
|
* net.httpserver: Remove obsolete APIMatthew Wild2025-02-141-17/+0
|
* prosody.cfg.lua.dist: Updates for 13.0+Matthew Wild2025-02-141-2/+4
|
* CHANGES: List mod_cloud_notifyMatthew Wild2025-02-141-0/+1
|
* MUC: Use new XEP namespace for hats by defaultMatthew Wild2025-02-141-1/+1
| | | | Revert with muc_hats_compat = true in the config if necessary.
* prosodyctl: check: Warn about deprecated mod_posixMatthew Wild2025-02-131-0/+6
|
* modulemanager: Remove autoloading of per-platform moduleMatthew Wild2025-02-131-1/+0
| | | | | We only support posix these days, and we moved it to the core startup process to make it more deterministic and reliable.
* mod_admin_shell: Remove duplicated lineMatthew Wild2025-02-131-2/+0
|
* mod_admin_shell: Rename user:setrole to user:set_rolesMatthew Wild2025-02-131-4/+4
| | | | | This is more readable and accessible, and it will only be harder to change after release.