diff options
author | Alexey Shchepin <alexey@process-one.net> | 2003-11-23 20:11:21 +0000 |
---|---|---|
committer | Alexey Shchepin <alexey@process-one.net> | 2003-11-23 20:11:21 +0000 |
commit | 0822a55f05bb327f0d362e0a3de205f5f1ce604a (patch) | |
tree | 288319f357281e47946b284b65c1ad70a70e5810 /src/mod_muc | |
parent | * examples/mtr/ejabberd: Updated (thanks to Marshall T. Rose) (diff) |
* src/cyrsasl_digest.erl: Bugfix (thanks to Sergei Golovan)
* src/ejabberd.cfg.example: Updated
* src/ejabberd_auth.erl: Support for LDAP authentification
* src/cyrsasl_digest.erl: Likewise
* src/mod_register.erl: Likewise
* src/ejabberd_c2s.erl: Likewise
* src/eldap/: Imported "eldap" package
* src/ejabberd_sm.erl: Bugfix
* src/mod_muc/mod_muc_room.erl: Bugfixes
SVN Revision: 176
Diffstat (limited to 'src/mod_muc')
-rw-r--r-- | src/mod_muc/mod_muc_room.erl | 33 |
1 files changed, 23 insertions, 10 deletions
diff --git a/src/mod_muc/mod_muc_room.erl b/src/mod_muc/mod_muc_room.erl index 71c1a4417..f9affed9d 100644 --- a/src/mod_muc/mod_muc_room.erl +++ b/src/mod_muc/mod_muc_room.erl @@ -308,6 +308,8 @@ normal_state({route, From, "", _ -> {next_state, normal_state, NewStateData} end; + reply -> + {next_state, normal_state, StateData}; _ -> Err = jlib:make_error_reply( Packet, ?ERR_FEATURE_NOT_IMPLEMENTED), @@ -448,11 +450,17 @@ normal_state({route, From, ToNick, true -> case find_jid_by_nick(ToNick, StateData) of false -> - Err = jlib:make_error_reply( - Packet, ?ERR_ITEM_NOT_FOUND), - ejabberd_router:route( - jlib:jid_replace_resource(StateData#state.jid, ToNick), - From, Err); + case jlib:iq_query_info(Packet) of + reply -> + ok; + _ -> + Err = jlib:make_error_reply( + Packet, ?ERR_ITEM_NOT_FOUND), + ejabberd_router:route( + jlib:jid_replace_resource( + StateData#state.jid, ToNick), + From, Err) + end; ToJID -> {ok, #user{nick = FromNick}} = ?DICT:find(jlib:jid_tolower(From), @@ -462,11 +470,16 @@ normal_state({route, From, ToNick, ToJID, Packet) end; _ -> - Err = jlib:make_error_reply( - Packet, ?ERR_NOT_ALLOWED), - ejabberd_router:route( - jlib:jid_replace_resource(StateData#state.jid, ToNick), From, - Err) + case jlib:iq_query_info(Packet) of + reply -> + ok; + _ -> + Err = jlib:make_error_reply( + Packet, ?ERR_NOT_ALLOWED), + ejabberd_router:route( + jlib:jid_replace_resource(StateData#state.jid, ToNick), + From, Err) + end end, {next_state, normal_state, StateData}; |