diff options
Diffstat (limited to 'src/mod_carboncopy.erl')
-rw-r--r-- | src/mod_carboncopy.erl | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/mod_carboncopy.erl b/src/mod_carboncopy.erl index 2cc495aec..186aca5e3 100644 --- a/src/mod_carboncopy.erl +++ b/src/mod_carboncopy.erl @@ -34,7 +34,7 @@ -export([start/2, stop/1]). --export([user_send_packet/3, user_receive_packet/4, +-export([user_send_packet/4, user_receive_packet/5, iq_handler2/3, iq_handler1/3, remove_connection/4, is_carbon_copy/1, mod_opt_type/1]). @@ -124,10 +124,10 @@ iq_handler(From, _To, #iq{type=set, sub_el = #xmlel{name = Operation, children iq_handler(_From, _To, IQ, _CC)-> IQ#iq{type=error, sub_el = [?ERR_NOT_ALLOWED]}. -user_send_packet(From, To, Packet) -> +user_send_packet(Packet, _C2SState, From, To) -> check_and_forward(From, To, Packet, sent). -user_receive_packet(JID, _From, To, Packet) -> +user_receive_packet(Packet, _C2SState, JID, _From, To) -> check_and_forward(JID, To, Packet, received). % verifier si le trafic est local @@ -142,14 +142,15 @@ check_and_forward(JID, To, Packet, Direction)-> true -> case is_carbon_copy(Packet) of false -> - send_copies(JID, To, Packet, Direction); + send_copies(JID, To, Packet, Direction), + Packet; true -> %% stop the hook chain, we don't want mod_logdb to register %% this message (duplicate) - stop + {stop, Packet} end; _ -> - ok + Packet end. remove_connection(User, Server, Resource, _Status)-> |