diff options
author | Alexey Shchepin <alexey@process-one.net> | 2005-10-15 02:45:26 +0000 |
---|---|---|
committer | Alexey Shchepin <alexey@process-one.net> | 2005-10-15 02:45:26 +0000 |
commit | 9e88ecc1d1d8c05246698249ddb1dd77b1161935 (patch) | |
tree | 1b0d93daec6d1a2fa4f88cf48dbecde2daaa9aad | |
parent | * src/odbc/ejabberd_odbc.erl: Experimental support for pgsql (diff) |
* src/ejabberd_c2s.erl: Updated to work correctly with
mod_vcard_odbc
SVN Revision: 419
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | src/ejabberd_c2s.erl | 14 |
2 files changed, 15 insertions, 4 deletions
@@ -1,3 +1,8 @@ +2005-10-15 Alexey Shchepin <alexey@sevcom.net> + + * src/ejabberd_c2s.erl: Updated to work correctly with + mod_vcard_odbc + 2005-10-13 Alexey Shchepin <alexey@sevcom.net> * src/odbc/ejabberd_odbc.erl: Experimental support for pgsql diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl index 72c121336..a567303b6 100644 --- a/src/ejabberd_c2s.erl +++ b/src/ejabberd_c2s.erl @@ -895,10 +895,16 @@ handle_info({route, From, To, Packet}, StateName, StateData) -> IQ = jlib:iq_query_info(Packet), case IQ of #iq{xmlns = ?NS_VCARD} -> - ResIQ = mod_vcard:process_sm_iq(From, To, IQ), - ejabberd_router:route(To, - From, - jlib:iq_to_xml(ResIQ)), + Host = StateData#state.server, + case ets:lookup(sm_iqtable, {?NS_VCARD, Host}) of + [{_, Module, Function, Opts}] -> + gen_iq_handler:handle(Host, Module, Function, Opts, + From, To, IQ); + [] -> + Err = jlib:make_error_reply( + Packet, ?ERR_FEATURE_NOT_IMPLEMENTED), + ejabberd_router:route(To, From, Err) + end, {false, Attrs, StateData}; %-ifdef(PRIVACY_SUPPORT). #iq{} -> |