diff options
author | Matthew Wild <mwild1@gmail.com> | 2008-11-15 22:29:24 +0000 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2008-11-15 22:29:24 +0000 |
commit | 60292ade15292d2398d91a1af6a578d6a20c9f34 (patch) | |
tree | 73a5d330473223ad3e0bfb100a2271afacee4855 /plugins/mod_saslauth.lua | |
parent | 7fb57614491db05660e8952634aeac67d4ff22f5 (diff) | |
parent | 49ab3af4421a0410a723fa8dc7286d4adf736fc9 (diff) | |
download | prosody-60292ade15292d2398d91a1af6a578d6a20c9f34.tar.gz prosody-60292ade15292d2398d91a1af6a578d6a20c9f34.zip |
Merge from waqas
Diffstat (limited to 'plugins/mod_saslauth.lua')
-rw-r--r-- | plugins/mod_saslauth.lua | 24 |
1 files changed, 5 insertions, 19 deletions
diff --git a/plugins/mod_saslauth.lua b/plugins/mod_saslauth.lua index 2094867f..7fe84304 100644 --- a/plugins/mod_saslauth.lua +++ b/plugins/mod_saslauth.lua @@ -105,7 +105,6 @@ add_iq_handler("c2s", "urn:ietf:params:xml:ns:xmpp-bind", local resource; if stanza.attr.type == "set" then local bind = stanza.tags[1]; - if bind and bind.attr.xmlns == xmlns_bind then resource = bind:child_with_name("resource"); if resource then @@ -113,26 +112,13 @@ add_iq_handler("c2s", "urn:ietf:params:xml:ns:xmpp-bind", end end end - local success, err = sm_bind_resource(session, resource); + local success, err_type, err, err_msg = sm_bind_resource(session, resource); if not success then - local reply = st.reply(stanza); - reply.attr.type = "error"; - if err == "conflict" then - reply:tag("error", { type = "modify" }) - :tag("conflict", { xmlns = xmlns_stanzas }); - elseif err == "constraint" then - reply:tag("error", { type = "cancel" }) - :tag("resource-constraint", { xmlns = xmlns_stanzas }); - elseif err == "auth" then - reply:tag("error", { type = "cancel" }) - :tag("not-allowed", { xmlns = xmlns_stanzas }); - end - send(session, reply); + session.send(st.error_reply(stanza, err_type, err, err_msg)); else - local reply = st.reply(stanza); - reply:tag("bind", { xmlns = xmlns_bind}) - :tag("jid"):text(session.full_jid); - send(session, reply); + session.send(st.reply(stanza) + :tag("bind", { xmlns = xmlns_bind}) + :tag("jid"):text(session.full_jid)); end end); |