aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMickaël Rémond <mickael.remond@process-one.net>2008-05-22 10:53:49 +0000
committerMickaël Rémond <mickael.remond@process-one.net>2008-05-22 10:53:49 +0000
commit5e9576ffa3064328dc39b49c7344b309442d7212 (patch)
treeaed98dc36b20b8f4b266f9ec61621c1b7c7b3ead /src
parent* src/ejabberd_c2s.erl: user_send_packet hook now called on all packets inclu... (diff)
* src/ejabberd_s2s.erl: Added s2s_send_packet and s2s_receive_packet hooks (EJAB-635).
* src/ejabberd_s2s_in.erl: Likewise. SVN Revision: 1342
Diffstat (limited to 'src')
-rw-r--r--src/ejabberd_s2s.erl5
-rw-r--r--src/ejabberd_s2s_in.erl8
2 files changed, 13 insertions, 0 deletions
diff --git a/src/ejabberd_s2s.erl b/src/ejabberd_s2s.erl
index b500388c5..cd878c1b2 100644
--- a/src/ejabberd_s2s.erl
+++ b/src/ejabberd_s2s.erl
@@ -256,6 +256,11 @@ do_route(From, To, Packet) ->
NewAttrs = jlib:replace_from_to_attrs(jlib:jid_to_string(From),
jlib:jid_to_string(To),
Attrs),
+ #jid{lserver = MyServer} = From,
+ ejabberd_hooks:run(
+ s2s_send_packet,
+ MyServer,
+ [From, To, Packet]),
send_element(Pid, {xmlelement, Name, NewAttrs, Els}),
ok;
{aborted, _Reason} ->
diff --git a/src/ejabberd_s2s_in.erl b/src/ejabberd_s2s_in.erl
index cd57e3d1e..9827775d2 100644
--- a/src/ejabberd_s2s_in.erl
+++ b/src/ejabberd_s2s_in.erl
@@ -412,6 +412,10 @@ stream_established({xmlstreamelement, El}, StateData) ->
if ((Name == "iq") or
(Name == "message") or
(Name == "presence")) ->
+ ejabberd_hooks:run(
+ s2s_receive_packet,
+ LFrom,
+ [From, To, NewEl]),
ejabberd_router:route(
From, To, NewEl);
true ->
@@ -427,6 +431,10 @@ stream_established({xmlstreamelement, El}, StateData) ->
if ((Name == "iq") or
(Name == "message") or
(Name == "presence")) ->
+ ejabberd_hooks:run(
+ s2s_receive_packet,
+ LFrom,
+ [From, To, NewEl]),
ejabberd_router:route(
From, To, NewEl);
true ->