]> granicus.if.org Git - ejabberd/commitdiff
* src/jlib.hrl: Added jaber:iq:auth:error namespace and
authorAlexey Shchepin <alexey@process-one.net>
Tue, 8 Apr 2003 19:32:01 +0000 (19:32 +0000)
committerAlexey Shchepin <alexey@process-one.net>
Tue, 8 Apr 2003 19:32:01 +0000 (19:32 +0000)
appropriate errors
* src/ejabberd_c2s.erl: Use auth:error in appropriate places

* src/jlib.hrl: Changed stream error and stanza error namespace
names due to last XMPP Core changes

SVN Revision: 97

ChangeLog
src/ejabberd_c2s.erl
src/jlib.hrl

index 711466790eb7d932d8dfa9d5f49dbf2f8efd7f16..18cb45024f0683a86381ed52123ee8b89f42195a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2003-04-07  Alexey Shchepin  <alexey@sevcom.net>
+
+       * src/jlib.hrl: Added jaber:iq:auth:error namespace and
+       appropriate errors
+       * src/ejabberd_c2s.erl: Use auth:error in appropriate places
+
+       * src/jlib.hrl: Changed stream error and stanza error namespace
+       names due to last XMPP Core changes
+
 2003-03-28  Alexey Shchepin  <alexey@sevcom.net>
 
        * src/mod_muc/mod_muc_room.erl: Added support for grant/revoke
index 6bcc16348e91bdfe619e3180234e63bd8e3264ec..b495e7c01f9f5c56a181e6eccf7158d25516a13a 100644 (file)
@@ -178,7 +178,7 @@ wait_for_auth({xmlstreamelement, El}, StateData) ->
            send_element(StateData#state.socket, Res),
            {next_state, wait_for_auth, StateData};
        {auth, ID, set, {U, P, D, ""}} ->
-           Err = jlib:make_error_reply(El, "406", "Not Acceptable"),
+           Err = jlib:make_error_reply(El, ?ERR_AUTH_NO_RESOURCE_PROVIDED),
            send_element(StateData#state.socket, Err),
            {next_state, wait_for_auth, StateData};
        {auth, ID, set, {U, P, D, R}} ->
@@ -316,7 +316,7 @@ wait_for_resource_auth({xmlstreamelement, El}, StateData) ->
            send_element(StateData#state.socket, Res),
            {next_state, wait_for_resource_auth, StateData};
        {auth, ID, set, {U, _, _, ""}} ->
-           Err = jlib:make_error_reply(El, "406", "Not Acceptable"),
+           Err = jlib:make_error_reply(El, ?ERR_AUTH_NO_RESOURCE_PROVIDED),
            send_element(StateData#state.socket, Err),
            {next_state, wait_for_resource_auth, StateData};
        {auth, ID, set, {U, _, _, R}} ->
index ace624c7674b3cdeb85d155cf43357a2f6c33100..b9a9ff705ba8205bb713450c0218ef05213c4c52 100644 (file)
@@ -9,6 +9,7 @@
 -define(NS_DISCO_INFO,  "http://jabber.org/protocol/disco#info").
 -define(NS_VCARD,       "vcard-temp").
 -define(NS_AUTH,        "jabber:iq:auth").
+-define(NS_AUTH_ERROR,  "jabber:iq:auth:error").
 -define(NS_REGISTER,    "jabber:iq:register").
 -define(NS_SEARCH,      "jabber:iq:search").
 -define(NS_ROSTER,      "jabber:iq:roster").
@@ -27,9 +28,8 @@
 
 -define(NS_STREAM,      "http://etherx.jabber.org/streams").
 
-% TODO: replace "xmppcore-rfc-number" with real RFC number
--define(NS_STANZAS,     "urn:ietf:rfc:xmppcore-rfc-number:stanzas").
--define(NS_STREAMS,     "urn:ietf:rfc:xmppcore-rfc-number:streams").
+-define(NS_STANZAS,     "urn:ietf:params:xml:ns:xmpp-stanzas").
+-define(NS_STREAMS,     "urn:ietf:params:xml:ns:xmpp-streams").
 
 -define(NS_SASL_MECHANISMS, "http://www.iana.org/assignments/sasl-mechanisms").
 
 %-define(ERR_,
 %      ?STANZA_ERROR("", "", "")).
 
+% Application-specific stanza errors
+-define(AUTH_STANZA_ERROR(Condition),
+       {xmlelement, "error",
+        [{"code", "406"}, {"class", "app"}],
+        [{xmlelement, "auth-condition",
+          [{"xmlns", ?NS_AUTH_ERROR}],
+          [{xmlelement, Condition, [], []}]}]}).
+
+-define(ERR_AUTH_NO_RESOURCE_PROVIDED,
+       ?AUTH_STANZA_ERROR("no-resource-provided")).
+-define(ERR_AUTH_BAD_RESOURCE_FORMAT,
+       ?AUTH_STANZA_ERROR("bad-resource-format")).
+-define(ERR_AUTH_RESOURCE_CONFLICT,
+       ?AUTH_STANZA_ERROR("resource-conflict")).
+
 
 -define(STREAM_ERROR(Class, Condition),
        {xmlelement, "stream:error",