diff options
author | Kim Alvefur <zash@zash.se> | 2022-08-18 03:26:32 +0200 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2022-08-18 03:26:32 +0200 |
commit | 20afe7d20dfde84a9deb6ed4f85a6e7a9429f09c (patch) | |
tree | 9c22770ef4c2a69d5132ee4288042c1a2ac1fa2d /plugins/mod_s2s.lua | |
parent | 8ef7bc2cf4d430c96e2b9b1876ba406c7c03aba9 (diff) | |
download | prosody-20afe7d20dfde84a9deb6ed4f85a6e7a9429f09c.tar.gz prosody-20afe7d20dfde84a9deb6ed4f85a6e7a9429f09c.zip |
mod_s2s: Add event where resolver for s2sout can be tweaked
Could be used to implement custom connection methods (c.f. mod_onions)
without needing to duplicate the rest of route_to_new_session().
Adds a feature to enable detection since it can be difficult to detect
support for an event otherwise.
Diffstat (limited to 'plugins/mod_s2s.lua')
-rw-r--r-- | plugins/mod_s2s.lua | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/plugins/mod_s2s.lua b/plugins/mod_s2s.lua index 300a747e..ee65ba70 100644 --- a/plugins/mod_s2s.lua +++ b/plugins/mod_s2s.lua @@ -230,6 +230,10 @@ function route_to_new_session(event) resolver; }); end + + local pre_event = { session = host_session; resolver = resolver }; + module:context(from_host):fire_event("s2sout-pre-connect", pre_event); + resolver = pre_event.resolver; connect(resolver, listener, nil, { session = host_session }); m_initiated_connections:with_labels(from_host):add(1) return true; |