aboutsummaryrefslogtreecommitdiff
path: root/src/ejabberd_c2s.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/ejabberd_c2s.erl')
-rw-r--r--src/ejabberd_c2s.erl14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl
index 5b5feaed2..6df6766ca 100644
--- a/src/ejabberd_c2s.erl
+++ b/src/ejabberd_c2s.erl
@@ -1273,7 +1273,19 @@ handle_info({route, From, To, Packet}, StateName, StateData) ->
{From, To, Packet},
in]) of
allow ->
- {true, Attrs, StateData};
+ case ejabberd_hooks:run_fold(
+ feature_check_packet, StateData#state.server,
+ allow,
+ [StateData#state.user,
+ StateData#state.server,
+ StateData#state.pres_last,
+ {From, To, Packet},
+ in]) of
+ allow ->
+ {true, Attrs, StateData};
+ deny ->
+ {false, Attrs, StateData}
+ end;
deny ->
{false, Attrs, StateData}
end;