comparison mod_block_strangers/mod_block_strangers.lua @ 2060:bd0c5d546bf8

mod_block_strangers: Allow iq/full responses through
author Matthew Wild <mwild1@gmail.com>
date Fri, 04 Mar 2016 17:16:13 +0000
parents 82834df1dea6
children 09f6e1a09b2b
comparison
equal deleted inserted replaced
2059:e96a86561f3e 2060:bd0c5d546bf8
7 function check_subscribed(event) 7 function check_subscribed(event)
8 local stanza = event.stanza; 8 local stanza = event.stanza;
9 local to_user, to_host, to_resource = jid_split(stanza.attr.to); 9 local to_user, to_host, to_resource = jid_split(stanza.attr.to);
10 local from_jid = jid_bare(stanza.attr.from); 10 local from_jid = jid_bare(stanza.attr.from);
11 if to_user and not is_contact_subscribed(to_user, to_host, from_jid) then 11 if to_user and not is_contact_subscribed(to_user, to_host, from_jid) then
12 if to_resource and stanza.attr.type == "groupchat" then 12 if to_resource and stanza.attr.type == "groupchat"
13 or stanza.name == "iq" and (stanza.attr.type == "result" or stanza.attr.type == "error") then
13 return nil; -- Pass through 14 return nil; -- Pass through
14 end 15 end
15 if stanza.name == "iq" and ( stanza.attr.type == "get" or stanza.attr.type == "set" ) then 16 if stanza.name == "iq" and ( stanza.attr.type == "get" or stanza.attr.type == "set" ) then
16 event.origin.send(st.error_reply(stanza, "cancel", "service-unavailable")); 17 event.origin.send(st.error_reply(stanza, "cancel", "service-unavailable"));
17 end 18 end