mod_smacks: Bounce unhandled stanzas from local origin (fix #1759)
Sending stanzas with a remote session as origin when the stanzas have a
local JID in the from attribute trips validation in core.stanza_router,
leading to warnings:
> Received a stanza claiming to be from remote.example, over a stream authed for localhost.example
Using module:send() uses the local host as origin, which is fine here.
# Pubsub: Create and delete
[Client] Romeo
jid: admin@localhost
password: password
// admin@localhost is assumed to have node creation privileges
---------
Romeo connects
Romeo sends:
<iq type="set" to="pubsub.localhost" id='create1'>
<pubsub xmlns="http://jabber.org/protocol/pubsub">
<create node="princely_musings"/>
</pubsub>
</iq>
Romeo receives:
<iq type="result" id='create1'/>
Romeo sends:
<iq type="set" to="pubsub.localhost" id='create2'>
<pubsub xmlns="http://jabber.org/protocol/pubsub">
<create node="princely_musings"/>
</pubsub>
</iq>
Romeo receives:
<iq type="error" id='create2'>
<error type="cancel">
<conflict xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
</error>
</iq>
Romeo sends:
<iq type="set" to="pubsub.localhost" id='delete1'>
<pubsub xmlns="http://jabber.org/protocol/pubsub#owner">
<delete node="princely_musings"/>
</pubsub>
</iq>
Romeo receives:
<iq type="result" id='delete1'/>
Romeo sends:
<iq type="set" to="pubsub.localhost" id='delete2'>
<pubsub xmlns="http://jabber.org/protocol/pubsub#owner">
<delete node="princely_musings"/>
</pubsub>
</iq>
Romeo receives:
<iq type="error" id='delete2'>
<error type="cancel">
<item-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
</error>
</iq>
Romeo disconnects
// vim: syntax=xml: