<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://hg.omfa.de/prosody-hg/</link>
    <language>en-us</language>

    <title>prosody-hg: plugins/mod_s2s.lua history</title>
    <description>plugins/mod_s2s.lua revision history</description>
    <item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/9728c3fabeef/plugins/mod_s2s.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Wed, 29 Apr 2026 17:12:59 +0100</pubDate>
</item>
<item>
    <title>Merge 0.12-&gt;13.0</title>
    <link>http://hg.omfa.de/prosody-hg/log/e3ddbf7f2d3f/plugins/mod_s2s.lua</link>
    <description><![CDATA[Merge 0.12-&gt;13.0]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Wed, 29 Apr 2026 17:12:11 +0100</pubDate>
</item>
<item>
    <title>mod_c2s, mod_s2s: Add configurable limit for stanza max child elements</title>
    <link>http://hg.omfa.de/prosody-hg/log/363a79f54109/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_c2s, mod_s2s: Add configurable limit for stanza max child elements]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 16 Apr 2026 18:53:34 +0100</pubDate>
</item>
<item>
    <title>mod_c2s,mod_s2s: Introduce separate pre-authentication stanza size limit</title>
    <link>http://hg.omfa.de/prosody-hg/log/fed0dd8dda09/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_c2s,mod_s2s: Introduce separate pre-authentication stanza size limit<br/>
<br/>
This should prevent unauthenticated resource use via the XML parser.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 07 Apr 2026 20:35:41 +0200</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/b6b09dace24b/plugins/mod_s2s.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Fri, 17 Apr 2026 19:43:00 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Update event data to include session if created</title>
    <link>http://hg.omfa.de/prosody-hg/log/723c6f5f01b7/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Update event data to include session if created]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Fri, 17 Apr 2026 19:40:56 +0100</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/5aacae4b2ccf/plugins/mod_s2s.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Fri, 17 Apr 2026 17:47:01 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Fire consistent event data across all 'connected' events</title>
    <link>http://hg.omfa.de/prosody-hg/log/18d364587db5/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Fire consistent event data across all 'connected' events<br/>
<br/>
This fixes a traceback in the new mod_limits IP limiting code when matching<br/>
s2sin connections.]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Fri, 17 Apr 2026 17:46:31 +0100</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/c1469296190d/plugins/mod_s2s.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Fri, 17 Apr 2026 14:35:32 +0100</pubDate>
</item>
<item>
    <title>mod_c2s, mod_s2s: Add configurable limit for stanza max child elements</title>
    <link>http://hg.omfa.de/prosody-hg/log/1e005ba71f0d/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_c2s, mod_s2s: Add configurable limit for stanza max child elements]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 16 Apr 2026 18:53:34 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Add 'conn' to s2s-connected event object</title>
    <link>http://hg.omfa.de/prosody-hg/log/791426dda30d/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Add 'conn' to s2s-connected event object<br/>
<br/>
This is for consistency with other event handlers.]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 16 Apr 2026 16:12:34 +0100</pubDate>
</item>
<item>
    <title>mod_c2s,mod_s2s: Introduce separate pre-authentication stanza size limit</title>
    <link>http://hg.omfa.de/prosody-hg/log/8a4417d32b0f/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_c2s,mod_s2s: Introduce separate pre-authentication stanza size limit<br/>
<br/>
This should prevent unauthenticated resource use via the XML parser.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 07 Apr 2026 20:35:41 +0200</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/b5eeb6730721/plugins/mod_s2s.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 22 Mar 2026 11:28:52 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Fully validate stream addressing</title>
    <link>http://hg.omfa.de/prosody-hg/log/a1fb05cbd44e/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Fully validate stream addressing<br/>
<br/>
NAMEPREP is not enough to validate an XMPP hostpart, missing IDNA and<br/>
the IP literal special cases.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 14 Mar 2026 01:19:27 +0100</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/e08e535a9945/plugins/mod_s2s.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 06 Jan 2026 17:37:46 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Explicitly prevent sending recursive error replies when queue is full</title>
    <link>http://hg.omfa.de/prosody-hg/log/04d7f2038933/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Explicitly prevent sending recursive error replies when queue is full]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 04 Jan 2026 17:58:26 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Fix traceback when outgoing s2s queue is full (thanks tom)</title>
    <link>http://hg.omfa.de/prosody-hg/log/4a288b082f42/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Fix traceback when outgoing s2s queue is full (thanks tom)<br/>
<br/>
When session.send() is used, no 'origin' field is included in the event,<br/>
leading to an error attempting to index nil.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 04 Jan 2026 17:54:48 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Report outgoing connection failures to remote servers</title>
    <link>http://hg.omfa.de/prosody-hg/log/d4a7cc295363/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Report outgoing connection failures to remote servers<br/>
<br/>
When setting up a new server, it can be easy to make mistakes with DNS,<br/>
firewall or port forwarding that results in the ability to make outgoing<br/>
connections, but not receive incoming, leading to a half-working setup<br/>
where messages can be sent but not received. This can be difficult to<br/>
diagnose. It is also difficult to inform the other end about the problem<br/>
without a working channel in that direction, but when an incoming<br/>
connection has been established, it can be closed with a stream error,<br/>
which hopefully shows up in logs.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 30 Dec 2025 17:45:58 +0100</pubDate>
</item>
<item>
    <title>mod_s2s, s2smanager: Experimental s2s_block_immediate_retries option</title>
    <link>http://hg.omfa.de/prosody-hg/log/4067a95336dd/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s, s2smanager: Experimental s2s_block_immediate_retries option<br/>
<br/>
Currently, if Prosody fails to connect to a remote domain, any pending stanzas<br/>
are bounced back to the sender. If the code processing these stanzas responds<br/>
to the error, we will begin a new outgoing connection before we've even<br/>
finished processing the last one.<br/>
<br/>
This generally hasn't been a problem, Prosody handles it fine.<br/>
<br/>
However, it is questionable whether this is sensible behaviour (if we *just*<br/>
failed to connect, will an immediate retry even work most of the time?). It<br/>
can also lead to some awkward traffic patterns, e.g. when combined with MUC.<br/>
<br/>
For example, when a MUC receives an error from a remote user, it may kick that<br/>
user from the MUC. This will cause a stanza to be sent to everyone else in the<br/>
MUC. If other users from the same domain are present, the notification will be<br/>
sent to the remote domain, triggering a new connection attempt for no reason<br/>
(the user was likely about to be kicked anyway after the sendq had finished<br/>
being bounced).<br/>
<br/>
This new option enables an alternative strategy, where attempts to send to the<br/>
remote domain that failed will be rejected until the sendq has finished being<br/>
processed.<br/>
<br/>
To enable the new behaviour, set the global option:<br/>
<br/>
	s2s_block_immediate_retries = true]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 16 Oct 2025 18:29:03 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Optimize order of table accesses</title>
    <link>http://hg.omfa.de/prosody-hg/log/e3ef3e684855/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Optimize order of table accesses<br/>
<br/>
No need to fetch hosts[to] multiple times if we just load it into a<br/>
local earlier]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 14 Oct 2025 22:12:51 +0200</pubDate>
</item>
<item>
    <title>mod_s2s: Close outgoing pre-auth s2s sessions when their stanza queue is full</title>
    <link>http://hg.omfa.de/prosody-hg/log/8e6baa66f828/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Close outgoing pre-auth s2s sessions when their stanza queue is full]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 25 Sep 2025 16:56:09 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Fix log to use formatting instead of concatenation (fixes #1461)</title>
    <link>http://hg.omfa.de/prosody-hg/log/cbb8dc92daa9/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Fix log to use formatting instead of concatenation (fixes #1461)<br/>
<br/>
Somehow this escaped semgrep, probably because the (x or y)() syntax.<br/>
<br/>
Thanks Ge0rG]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 24 May 2025 15:53:46 +0200</pubDate>
</item>
<item>
    <title>mod_s2s: Handle single message from chain validation</title>
    <link>http://hg.omfa.de/prosody-hg/log/e128ed4494f3/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Handle single message from chain validation<br/>
<br/>
Setting ssl.verifyext enables a callback that collects all errors from<br/>
every layer of the certificate chain. Otherwise a single string is<br/>
returned, which we did not handle before.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 01 Apr 2025 20:42:53 +0200</pubDate>
</item>
<item>
    <title>mod_s2s: Deal with OpenSSL changing spelling in strings</title>
    <link>http://hg.omfa.de/prosody-hg/log/7c76ca78ceef/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Deal with OpenSSL changing spelling in strings<br/>
<br/>
https://github.com/openssl/openssl/commit/ade08735f9d0ac85d611c5abee8a1df651bbca13]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 01 Apr 2025 18:15:34 +0200</pubDate>
</item>
<item>
    <title>core.certmanager: Move LuaSec verification tweaks to mod_s2s</title>
    <link>http://hg.omfa.de/prosody-hg/log/99d2100d2918/plugins/mod_s2s.lua</link>
    <description><![CDATA[core.certmanager: Move LuaSec verification tweaks to mod_s2s<br/>
<br/>
These two settings are only really needed for XMPP server-to-server<br/>
connections.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 15 Feb 2025 00:19:01 +0100</pubDate>
</item>
<item>
    <title>mod_c2s, mod_s2s: Support for queuing callbacks to run in session thread</title>
    <link>http://hg.omfa.de/prosody-hg/log/750ff9f579e2/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_c2s, mod_s2s: Support for queuing callbacks to run in session thread<br/>
<br/>
This allows certain session-specific code that needs to run in the async<br/>
context, but is itself triggered outside of that context (e.g. timers), to<br/>
be queued.<br/>
<br/>
An example of this is the session destruction code of mod_smacks, when the<br/>
hibernation timeout is reached.]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 21 Nov 2024 17:02:07 +0000</pubDate>
</item>
<item>
    <title>mod_s2s: Really fix logging of outgoing stanza queue counts</title>
    <link>http://hg.omfa.de/prosody-hg/log/63492b6e7fb6/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Really fix logging of outgoing stanza queue counts<br/>
<br/>
Some confusion happened in 42b98ee73ca8, possibly because .count()<br/>
returns the items?]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 11 Nov 2024 08:49:57 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Clone queued outgoing stanzas to prevent changes</title>
    <link>http://hg.omfa.de/prosody-hg/log/d3649ae194ab/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Clone queued outgoing stanzas to prevent changes<br/>
<br/>
This clone call was lost in 902d25cd0557<br/>
<br/>
Affects e.g. presence broadcasts, where the same stanza is sent many<br/>
times while mutating the 'to' attribute.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 10 Nov 2024 15:10:26 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Fix counting items in outgoing stanza queue (in logs)</title>
    <link>http://hg.omfa.de/prosody-hg/log/42b98ee73ca8/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Fix counting items in outgoing stanza queue (in logs)]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 10 Nov 2024 15:06:00 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Limit size of outgoing stanza queue</title>
    <link>http://hg.omfa.de/prosody-hg/log/902d25cd0557/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Limit size of outgoing stanza queue<br/>
<br/>
This queue is used to buffer stanzas while waiting for an outgoing s2s<br/>
connection to be established.<br/>
<br/>
Limit it to prevent excessive memory usage.<br/>
<br/>
Default chosen to approximate how many average stanzas fits in the<br/>
server_epoll default max_send_buffer_size of 32 MiB<br/>
<br/>
Returns a custom error instead of the default core.stanza_router<br/>
&quot;Communication with remote domains is not enabled&quot; from is sent back,<br/>
which does not describe what is happening here.<br/>
<br/>
Closes #1106]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 09 Nov 2024 16:47:14 +0100</pubDate>
</item>
<item>
    <title>util.error: Use is_error() instead of is_err() everywhere</title>
    <link>http://hg.omfa.de/prosody-hg/log/d532176d4334/plugins/mod_s2s.lua</link>
    <description><![CDATA[util.error: Use is_error() instead of is_err() everywhere<br/>
<br/>
Continuation of 4b39691a274e]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 29 Oct 2024 14:10:02 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Fix traceback due to type confusion (Thanks Menel)</title>
    <link>http://hg.omfa.de/prosody-hg/log/078780f262d5/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Fix traceback due to type confusion (Thanks Menel)<br/>
<br/>
The code assumed a 2-d sparse array but it could also be a string.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 26 Aug 2024 19:21:03 +0200</pubDate>
</item>
<item>
    <title>mod_c2s,mod_s2s: Advertise idle-seconds per XEP-0478</title>
    <link>http://hg.omfa.de/prosody-hg/log/2159a206684e/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_c2s,mod_s2s: Advertise idle-seconds per XEP-0478<br/>
<br/>
This is the time after liveness checks are performed via the respective<br/>
read-timeout event, which by default involves sending a space character<br/>
but could be overridden e.g. as is done by mod_smacks.<br/>
<br/>
Only advertised, unsure what we would do with it.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 03 Aug 2024 16:28:59 +0200</pubDate>
</item>
<item>
    <title>mod_s2s: Comment on why we avoid hostnames in stanza bounce messages</title>
    <link>http://hg.omfa.de/prosody-hg/log/783706350faa/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Comment on why we avoid hostnames in stanza bounce messages]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 24 Feb 2024 17:45:50 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Close connection on smacks timeout</title>
    <link>http://hg.omfa.de/prosody-hg/log/f70311588c77/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Close connection on smacks timeout<br/>
<br/>
This merges the mod_s2s_smacks_timeout behavior from prosody-modules<br/>
<br/>
This event is fired by mod_smacks when the connection has not responded<br/>
to an ack-request for a period of time defaulting to 30 seconds,<br/>
indicating that the connection has become stuck or non-responsive.<br/>
Closing it prevents routing further messages via this connection and<br/>
frees resources. A stuck connection may otherwise remain until for a<br/>
time determined by the OS TCP subsystem, which can be quite long.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 02 Dec 2023 20:20:05 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Automagically enable DANE for s2sin if 'use_dane' is enabled</title>
    <link>http://hg.omfa.de/prosody-hg/log/b7c08f32112c/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Automagically enable DANE for s2sin if 'use_dane' is enabled<br/>
<br/>
Simplifies configuration, only one already existing boolean to flip.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Thu, 02 Nov 2023 09:39:03 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Fix reporting of DANE mismatch</title>
    <link>http://hg.omfa.de/prosody-hg/log/68d540df46b8/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Fix reporting of DANE mismatch<br/>
<br/>
Thought it was a case mismatch at first, fixed that, but it changed<br/>
nothing because the error was in the leaf part of the errors, not the<br/>
chain part.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 05 Aug 2023 20:41:24 +0200</pubDate>
</item>
<item>
    <title>plugins: Use integer config API with interval specification where sensible</title>
    <link>http://hg.omfa.de/prosody-hg/log/50324f66ca2a/plugins/mod_s2s.lua</link>
    <description><![CDATA[plugins: Use integer config API with interval specification where sensible<br/>
<br/>
Many of these fall into a few categories:<br/>
- util.cache size, must be &gt;= 1<br/>
- byte or item counts that logically can't be negative<br/>
- port numbers that should be in 1..0xffff]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 17 Jul 2023 01:38:54 +0200</pubDate>
</item>
<item>
    <title>plugins: Switch to :get_option_period() for time range options</title>
    <link>http://hg.omfa.de/prosody-hg/log/c8d949cf6b09/plugins/mod_s2s.lua</link>
    <description><![CDATA[plugins: Switch to :get_option_period() for time range options<br/>
<br/>
Improves readability (&quot;1 day&quot; vs 86400) and centralizes validation.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 16 Jul 2023 20:49:33 +0200</pubDate>
</item>
<item>
    <title>Merge 0.12-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/8576f94ac90a/plugins/mod_s2s.lua</link>
    <description><![CDATA[Merge 0.12-&gt;trunk]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Wed, 24 May 2023 15:35:28 +0200</pubDate>
</item>
<item>
    <title>mod_s2s: Add event where resolver for s2sout can be tweaked</title>
    <link>http://hg.omfa.de/prosody-hg/log/d5f322dd424b/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Add event where resolver for s2sout can be tweaked<br/>
<br/>
Could be used to implement custom connection methods (c.f. mod_onions)<br/>
without needing to duplicate the rest of route_to_new_session().<br/>
<br/>
Adds a feature to enable detection since it can be difficult to detect<br/>
support for an event otherwise.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Thu, 18 Aug 2022 03:26:32 +0200</pubDate>
</item>
<item>
    <title>mod_c2s,mod_s2s: Fix tag name for SLA (thanks mjk)</title>
    <link>http://hg.omfa.de/prosody-hg/log/93c68c454cb8/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_c2s,mod_s2s: Fix tag name for SLA (thanks mjk)<br/>
<br/>
The (still not published) XEP-xxxx: Stream Limits Advertisement uses the<br/>
element &lt;max-bytes/&gt; to advertise the maximum octet size of top level<br/>
stream elements. &quot;size&quot; was probably a leftover of an even earlier<br/>
version of the (Proto)XEP.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Wed, 03 May 2023 18:02:11 +0200</pubDate>
</item>
<item>
    <title>plugins: Prefix module imports with prosody namespace</title>
    <link>http://hg.omfa.de/prosody-hg/log/74b9e05af71e/plugins/mod_s2s.lua</link>
    <description><![CDATA[plugins: Prefix module imports with prosody namespace]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 24 Mar 2023 13:15:28 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Retrieve stanza size limit from peer for bidi connections</title>
    <link>http://hg.omfa.de/prosody-hg/log/ccc0bdad82cc/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Retrieve stanza size limit from peer for bidi connections<br/>
<br/>
Having mod_s2s know about the bidi namespace is perhaps a bit awkward<br/>
but putting this in mod_s2s_bidi would be more awkward as it has nothing<br/>
to do with limits.  Some indirection event could be added in the future.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Wed, 09 Nov 2022 19:10:16 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Advertise stream features on bidi connections</title>
    <link>http://hg.omfa.de/prosody-hg/log/871d2c95b403/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Advertise stream features on bidi connections]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Thu, 20 Oct 2022 14:22:36 +0200</pubDate>
</item>
<item>
    <title>mod_c2s,mod_s2s: Adapt to XEP-xxxx: Stream Limits Advertisement</title>
    <link>http://hg.omfa.de/prosody-hg/log/12bd40b8e105/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_c2s,mod_s2s: Adapt to XEP-xxxx: Stream Limits Advertisement<br/>
<br/>
Thanks MattJ]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Thu, 20 Oct 2022 14:04:56 +0200</pubDate>
</item>
<item>
    <title>mod_s2s: Avoid sending too large stanzas</title>
    <link>http://hg.omfa.de/prosody-hg/log/f0f7b0c61465/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Avoid sending too large stanzas<br/>
<br/>
Just dropping them isn't great but hopefully something more sensible can<br/>
be done in the future.<br/>
<br/>
Will need work to ensure that this signal is handled correctly in<br/>
sending modules etc.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 16 Mar 2021 18:30:54 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Record stanza size limit advertised by other servers</title>
    <link>http://hg.omfa.de/prosody-hg/log/751bdd412915/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Record stanza size limit advertised by other servers<br/>
<br/>
For future use, i.e. canceling sending of stanzas that exceed the limit]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 16 Mar 2021 18:30:34 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Advertise stanza size limit to other servers</title>
    <link>http://hg.omfa.de/prosody-hg/log/d96e24bd54e1/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Advertise stanza size limit to other servers<br/>
<br/>
So they can, like, not send big stanzas.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 16 Mar 2021 18:25:05 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Simplify conditionals since all sessions should have .host now</title>
    <link>http://hg.omfa.de/prosody-hg/log/16ea01745dbe/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Simplify conditionals since all sessions should have .host now]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 26 Aug 2022 19:10:15 +0200</pubDate>
</item>
<item>
    <title>Merge 0.12-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/ca4abc6ab208/plugins/mod_s2s.lua</link>
    <description><![CDATA[Merge 0.12-&gt;trunk]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 26 Aug 2022 19:03:23 +0200</pubDate>
</item>
<item>
    <title>mod_s2s: Fix firing buffer drain events</title>
    <link>http://hg.omfa.de/prosody-hg/log/7d4a95ba9b6c/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Fix firing buffer drain events<br/>
<br/>
Fixes the same kind of issue as in 65563530375b but once and for all,<br/>
while improving similarity between incoming and outgoing connections.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 26 Aug 2022 18:53:00 +0200</pubDate>
</item>
<item>
    <title>mod_tls: Record STARTTLS state so it can be shown in Shell</title>
    <link>http://hg.omfa.de/prosody-hg/log/9184fe3d489a/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_tls: Record STARTTLS state so it can be shown in Shell<br/>
<br/>
This field can be viewed using s2s:show(nil, &quot;... starttls&quot;) even<br/>
without any special support in mod_admin_shell, which can be added later<br/>
to make it nicer. One can then assume that a TLS connection with an<br/>
empty / nil starttls field means Direct TLS.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 02 Aug 2022 19:26:26 +0200</pubDate>
</item>
<item>
    <title>mod_s2s: Log queued stanzas for which no error reply is produced</title>
    <link>http://hg.omfa.de/prosody-hg/log/65316782862f/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Log queued stanzas for which no error reply is produced<br/>
<br/>
This would mainly be error stanzas.<br/>
<br/>
Good to have some trace of when handling of them are finished.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 07 May 2022 13:10:27 +0200</pubDate>
</item>
<item>
    <title>mod_s2s: Don't bounce queued error stanzas (thanks Martin)</title>
    <link>http://hg.omfa.de/prosody-hg/log/e9ea5c88def0/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Don't bounce queued error stanzas (thanks Martin)<br/>
<br/>
The check for the type attr was lost in 11765f0605ec leading to attempts<br/>
to create error replies for error stanzas, which util.stanza rejects.<br/>
<br/>
Tested by sending<br/>
	&lt;message to=&quot;reject.badxmpp.eu&quot; type=&quot;error&quot;&gt;&lt;error/&gt;&lt;/message&gt;<br/>
which produced a traceback previously.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 07 May 2022 13:01:49 +0200</pubDate>
</item>
<item>
    <title>net: isolate LuaSec-specifics</title>
    <link>http://hg.omfa.de/prosody-hg/log/7e9ebdc75ce4/plugins/mod_s2s.lua</link>
    <description><![CDATA[net: isolate LuaSec-specifics<br/>
<br/>
For this, various accessor functions are now provided directly on the<br/>
sockets, which reach down into the LuaSec implementation to obtain the<br/>
information.<br/>
<br/>
While this may seem of little gain at first, it hides the implementation<br/>
detail of the LuaSec+LuaSocket combination that the actual socket and<br/>
the TLS layer are separate objects.<br/>
<br/>
The net gain here is that an alternative implementation does not have to<br/>
emulate that specific implementation detail and &quot;only&quot; has to expose<br/>
LuaSec-compatible data structures on the new functions.]]></description>
    <author>&#74;&#111;&#110;&#97;&#115;&#32;&#83;&#99;&#104;&#228;&#102;&#101;&#114;&#32;&#60;&#106;&#111;&#110;&#97;&#115;&#64;&#119;&#105;&#101;&#108;&#105;&#99;&#107;&#105;&#46;&#110;&#97;&#109;&#101;&#62;</author>
    <pubDate>Wed, 27 Apr 2022 17:44:14 +0200</pubDate>
</item>
<item>
    <title>Merge 0.12-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/d8a6e03a7161/plugins/mod_s2s.lua</link>
    <description><![CDATA[Merge 0.12-&gt;trunk]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Mon, 25 Apr 2022 15:09:53 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Improve robustness of outgoing s2s certificate verification</title>
    <link>http://hg.omfa.de/prosody-hg/log/8fac32810144/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Improve robustness of outgoing s2s certificate verification<br/>
<br/>
This change ensures we have positively verified the certificates of the server<br/>
we are connecting to before marking the session as authenticated. It protects<br/>
against situations where the verify-or-close stage of the connection was<br/>
interrupted (e.g. due to an uncaught error).<br/>
<br/>
Thanks to Zash for discovery and testing.]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Mon, 25 Apr 2022 15:07:49 +0100</pubDate>
</item>
<item>
    <title>mod_s2s: Distinguish DANE TLSA errors from generic cert chain errors</title>
    <link>http://hg.omfa.de/prosody-hg/log/bb85be686a01/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Distinguish DANE TLSA errors from generic cert chain errors<br/>
<br/>
Otherwise it would just report &quot;is not trusted&quot; unless you inspect the<br/>
logs. This message is sent to to the remote server, and will hopefully<br/>
show up in their logs, allowing the admin to fix their DANE setup.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 25 Apr 2022 14:41:54 +0200</pubDate>
</item>
<item>
    <title>mod_s2s: Recognise and report errors with CA or intermediate certs</title>
    <link>http://hg.omfa.de/prosody-hg/log/48121960983e/plugins/mod_s2s.lua</link>
    <description><![CDATA[mod_s2s: Recognise and report errors with CA or intermediate certs<br/>
<br/>
Should be invoked for cases such as when the Let's Encrypt intermediate<br/>
certificate expired not too long ago.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 25 Apr 2022 14:36:56 +0200</pubDate>
</item>

  </channel>
</rss>
