Sat, 23 Apr 2022 14:37:43 +0200 util.crand: Reduce scope here too
Kim Alvefur <zash@zash.se> [Sat, 23 Apr 2022 14:37:43 +0200] rev 12474
util.crand: Reduce scope here too Same as previous commit
Sat, 23 Apr 2022 14:29:43 +0200 util.strbitop: Reduce scope of functions
Kim Alvefur <zash@zash.se> [Sat, 23 Apr 2022 14:29:43 +0200] rev 12473
util.strbitop: Reduce scope of functions Equivalent to 'local' in Lua, these functions are exported via the luaopen_ function, which is the only one needing to be visible outside of the file. Pointed out by Link Mauve at some point, but there wasn't really any rush here.
Wed, 20 Apr 2022 22:41:54 +0200 net.connect: Fix accumulation of connection attempt references
Kim Alvefur <zash@zash.se> [Wed, 20 Apr 2022 22:41:54 +0200] rev 12472
net.connect: Fix accumulation of connection attempt references Connection attempts that failed the Happy Eyeballs race were not unreferenced and would accumulate. Tested by inspecting the 'pending_connections_map' after establishing s2s with a s2s target where the IPv6 port has a -j DROP rule causing it to time out and the IPv4 attempt wins the race. Expected is that the losing connection stays around until net.server timeouts kick in where it should be removed. The map table should tend towards being empty during idle times.
Wed, 13 Apr 2022 18:46:26 +0100 Merge 0.12->trunk
Matthew Wild <mwild1@gmail.com> [Wed, 13 Apr 2022 18:46:26 +0100] rev 12471
Merge 0.12->trunk
Wed, 13 Apr 2022 18:46:11 +0100 util.prosodyctl: check turn: ensure a result is always returned from a check (thanks eTaurus) 0.12
Matthew Wild <mwild1@gmail.com> [Wed, 13 Apr 2022 18:46:11 +0100] rev 12470
util.prosodyctl: check turn: ensure a result is always returned from a check (thanks eTaurus)
Wed, 13 Apr 2022 16:53:19 +0200 make: Install stanza watcher library (thanks Menel)
Kim Alvefur <zash@zash.se> [Wed, 13 Apr 2022 16:53:19 +0200] rev 12469
make: Install stanza watcher library (thanks Menel)
Wed, 23 Mar 2022 13:43:08 +0000 mod_admin_shell: Add watch:stanzas() command
Matthew Wild <mwild1@gmail.com> [Wed, 23 Mar 2022 13:43:08 +0000] rev 12468
mod_admin_shell: Add watch:stanzas() command
Wed, 23 Mar 2022 13:42:44 +0000 mod_debug_stanzas/watcher: New module library to dynamically 'watch' for stanzas
Matthew Wild <mwild1@gmail.com> [Wed, 23 Mar 2022 13:42:44 +0000] rev 12467
mod_debug_stanzas/watcher: New module library to dynamically 'watch' for stanzas
Wed, 23 Mar 2022 15:25:22 +0000 mod_s2s: Store real stanzas in session.sendq, rather than strings
Matthew Wild <mwild1@gmail.com> [Wed, 23 Mar 2022 15:25:22 +0000] rev 12466
mod_s2s: Store real stanzas in session.sendq, rather than strings This is the "right" thing to do. Strings were more memory-efficient, but e.g. bypassed stanza filters at reconnection time. Also not being stanzas prevents us from potential future work, such as merging sendq with mod_smacks. Regarding performance: we should counter the probable negative effect of this change with other positive changes that are desired anyway - e.g. a limit on the size of the sendq, improved in-memory representation of stanzas, s2s backoff (e.g. if a remote server is persistently unreachable, cache this failure for a while and don't just keep forever queuing stanzas for it).
Fri, 08 Apr 2022 23:38:10 +0200 Merge 0.12->trunk
Kim Alvefur <zash@zash.se> [Fri, 08 Apr 2022 23:38:10 +0200] rev 12465
Merge 0.12->trunk
Fri, 08 Apr 2022 23:35:31 +0200 mod_storage_xep0227: Fix mapping of nodes without explicit configuration 0.12
Kim Alvefur <zash@zash.se> [Fri, 08 Apr 2022 23:35:31 +0200] rev 12464
mod_storage_xep0227: Fix mapping of nodes without explicit configuration Turns out this table was wrong, it's missing some fields which are required and it's 'name', not 'node'. Setting it to the boolean true invokes compatibility behavior in mod_pep which results in the correct default structure.
Fri, 08 Apr 2022 15:17:11 +0200 Merge 0.12->trunk
Kim Alvefur <zash@zash.se> [Fri, 08 Apr 2022 15:17:11 +0200] rev 12463
Merge 0.12->trunk
Fri, 08 Apr 2022 15:09:19 +0200 mod_storage_xep0227: Fix conversion of SCRAM into internal format (fix #1741) 0.12
Kim Alvefur <zash@zash.se> [Fri, 08 Apr 2022 15:09:19 +0200] rev 12462
mod_storage_xep0227: Fix conversion of SCRAM into internal format (fix #1741) Looks like this function was a copy of hex_to_base64 without modifying it to do its inverse.
Thu, 31 Mar 2022 18:53:23 +0200 mod_storage_xep0227: Support basic listing of PEP nodes in absence of pubsub#admin data 0.12
Kim Alvefur <zash@zash.se> [Thu, 31 Mar 2022 18:53:23 +0200] rev 12461
mod_storage_xep0227: Support basic listing of PEP nodes in absence of pubsub#admin data Allows migrating PEP nodes with default settings
Tue, 29 Mar 2022 19:58:28 +0200 mod_storage_xep0227: Improve logging 0.12
Kim Alvefur <zash@zash.se> [Tue, 29 Mar 2022 19:58:28 +0200] rev 12460
mod_storage_xep0227: Improve logging What were we looking at?
Thu, 07 Apr 2022 17:22:22 +0100 Merge 0.12->trunk
Matthew Wild <mwild1@gmail.com> [Thu, 07 Apr 2022 17:22:22 +0100] rev 12459
Merge 0.12->trunk
Thu, 07 Apr 2022 17:22:02 +0100 mod_storage_xep0227: Handle missing {pubsub#owner}pubsub element (fixes #1740) 0.12
Matthew Wild <mwild1@gmail.com> [Thu, 07 Apr 2022 17:22:02 +0100] rev 12458
mod_storage_xep0227: Handle missing {pubsub#owner}pubsub element (fixes #1740)
Tue, 05 Apr 2022 19:49:18 +0200 Merge 0.12->trunk
Kim Alvefur <zash@zash.se> [Tue, 05 Apr 2022 19:49:18 +0200] rev 12457
Merge 0.12->trunk
Tue, 05 Apr 2022 14:27:37 +0200 prosodyctl: Pass server when listing (outdated) plugins (fix #1738) 0.12
Kim Alvefur <zash@zash.se> [Tue, 05 Apr 2022 14:27:37 +0200] rev 12456
prosodyctl: Pass server when listing (outdated) plugins (fix #1738) Needed since it checks the manifest of the repository and most likely defaults to luarocks.org unless specified
Mon, 04 Apr 2022 19:10:05 +0200 Merge 0.12->trunk
Kim Alvefur <zash@zash.se> [Mon, 04 Apr 2022 19:10:05 +0200] rev 12455
Merge 0.12->trunk
Mon, 04 Apr 2022 18:44:57 +0200 core.modulemanager: Fix global flag on per-host instances of shared modules (fix #1736) 0.12
Kim Alvefur <zash@zash.se> [Mon, 04 Apr 2022 18:44:57 +0200] rev 12454
core.modulemanager: Fix global flag on per-host instances of shared modules (fix #1736) This flag is something of a shortcut for `module.host == "*"` and should always be equal to that. Its absence on the proxy object made the property of the global module instance visible, causing problems such as with URL reporting in mod_http
Sun, 03 Apr 2022 12:57:11 +0100 Merge 0.12->trunk
Matthew Wild <mwild1@gmail.com> [Sun, 03 Apr 2022 12:57:11 +0100] rev 12453
Merge 0.12->trunk
Sun, 03 Apr 2022 12:56:11 +0100 configmanager: Clearer errors when providing unexpected values after VirtualHost (fixes #1735, thanks arawaks) 0.12
Matthew Wild <mwild1@gmail.com> [Sun, 03 Apr 2022 12:56:11 +0100] rev 12452
configmanager: Clearer errors when providing unexpected values after VirtualHost (fixes #1735, thanks arawaks)
Sat, 02 Apr 2022 16:39:29 +0200 Merge 0.12->trunk
Kim Alvefur <zash@zash.se> [Sat, 02 Apr 2022 16:39:29 +0200] rev 12451
Merge 0.12->trunk
Sat, 02 Apr 2022 16:33:27 +0200 util.random: Test whether util.crand works before using it (fix #1734) 0.12
Kim Alvefur <zash@zash.se> [Sat, 02 Apr 2022 16:33:27 +0200] rev 12450
util.random: Test whether util.crand works before using it (fix #1734) util.crand can be configured at compile time to use the Linux getrandom() system call, available from Linux 3.17, but it is still possible to load it with an older kernel lacking that system call, where attempting to use it throws an ENOSYS error. By testing for this on load we can fall back to /dev/urandom in this case.
Mon, 28 Mar 2022 14:53:46 +0100 Merge 0.12->trunk
Matthew Wild <mwild1@gmail.com> [Mon, 28 Mar 2022 14:53:46 +0100] rev 12449
Merge 0.12->trunk
Mon, 28 Mar 2022 14:53:24 +0100 mod_http (and dependent modules): Make CORS opt-in by default (fixes #1731) 0.12
Matthew Wild <mwild1@gmail.com> [Mon, 28 Mar 2022 14:53:24 +0100] rev 12448
mod_http (and dependent modules): Make CORS opt-in by default (fixes #1731) The same-origin policy enforced by browsers is a security measure that should only be turned off when it is safe to do so. It is safe to do so in Prosody's default modules, but people may load third-party modules that are unsafe. Therefore we have flipped the default, so that modules must explicitly opt in to having CORS headers added on their requests.
Mon, 28 Mar 2022 14:40:21 +0100 mod_http: Reintroduce support for disabling or limiting CORS (fixes #1730) 0.12
Matthew Wild <mwild1@gmail.com> [Mon, 28 Mar 2022 14:40:21 +0100] rev 12447
mod_http: Reintroduce support for disabling or limiting CORS (fixes #1730) This is far better than pre-0.12, because we now have a universal way to configure and enable/disable CORS on a per-module basis.
Mon, 28 Mar 2022 11:42:16 +0100 Merge 0.12->trunk
Matthew Wild <mwild1@gmail.com> [Mon, 28 Mar 2022 11:42:16 +0100] rev 12446
Merge 0.12->trunk
Mon, 28 Mar 2022 11:41:57 +0100 prosodyctl: check config: Report paths of loaded configuration files (fixed #1729) 0.12
Matthew Wild <mwild1@gmail.com> [Mon, 28 Mar 2022 11:41:57 +0100] rev 12445
prosodyctl: check config: Report paths of loaded configuration files (fixed #1729)
(0) -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 tip