aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Shchepin <alexey@process-one.net>2005-10-15 02:45:26 +0000
committerAlexey Shchepin <alexey@process-one.net>2005-10-15 02:45:26 +0000
commit9e88ecc1d1d8c05246698249ddb1dd77b1161935 (patch)
tree1b0d93daec6d1a2fa4f88cf48dbecde2daaa9aad
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--ChangeLog5
-rw-r--r--src/ejabberd_c2s.erl14
2 files changed, 15 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index bab0c9fb8..d6722e7fc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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{} ->