diff options
author | Alexey Shchepin <alexey@process-one.net> | 2003-04-08 19:32:01 +0000 |
---|---|---|
committer | Alexey Shchepin <alexey@process-one.net> | 2003-04-08 19:32:01 +0000 |
commit | 71d4115a086676f2ae8ee8c96eb59a2c322178d7 (patch) | |
tree | 7bab852a7f1fc258770a6431d004931236138bfd /src | |
parent | * src/mod_muc/mod_muc_room.erl: Added support for grant/revoke (diff) |
* 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
SVN Revision: 97
Diffstat (limited to 'src')
-rw-r--r-- | src/ejabberd_c2s.erl | 4 | ||||
-rw-r--r-- | src/jlib.hrl | 21 |
2 files changed, 20 insertions, 5 deletions
diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl index 6bcc1634..b495e7c0 100644 --- a/src/ejabberd_c2s.erl +++ b/src/ejabberd_c2s.erl @@ -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}} -> diff --git a/src/jlib.hrl b/src/jlib.hrl index ace624c7..b9a9ff70 100644 --- a/src/jlib.hrl +++ b/src/jlib.hrl @@ -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"). @@ -68,6 +68,21 @@ %-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", |