diff options
author | Matthew Wild <mwild1@gmail.com> | 2010-09-05 12:13:49 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2010-09-05 12:13:49 +0100 |
commit | fa3d0fcbba7109d98b4670aab3a6e43412bf1513 (patch) | |
tree | c2cc4fe200dd3cbf824ad67f820c56b001c8c284 /core/s2smanager.lua | |
parent | 129b52698c1be058a1eed36ff972936cec99fa85 (diff) | |
download | prosody-fa3d0fcbba7109d98b4670aab3a6e43412bf1513.tar.gz prosody-fa3d0fcbba7109d98b4670aab3a6e43412bf1513.zip |
s2smanager: Fire s2s{in,out}-destroyed when s2s connections are destroyed
Diffstat (limited to 'core/s2smanager.lua')
-rw-r--r-- | core/s2smanager.lua | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/core/s2smanager.lua b/core/s2smanager.lua index 39cce309..8705633d 100644 --- a/core/s2smanager.lua +++ b/core/s2smanager.lua @@ -576,6 +576,19 @@ function destroy_session(session, reason) incoming_s2s[session] = nil; end + local event_data = { session = session, reason = reason }; + if session.type == "s2sout" then + prosody.events.fire_event("s2sout-destroyed", event_data); + if hosts[session.from_host] then + hosts[session.from_host].events.fire_event("s2sout-destroyed", event_data); + end + else + prosody.events.fire_event("s2sin-destroyed", event_data); + if hosts[session.to_host] then + hosts[session.to_host].events.fire_event("s2sin-destroyed", event_data); + end + end + retire_session(session); -- Clean session until it is GC'd end |