# HG changeset patch # User Kim Alvefur # Date 1444570763 -7200 # Node ID 41ebdb331b9475aed4d7f8aac55bc8f86c1852db # Parent ceb594a14a18f7c92d200fb6227480e676c81475 mod_compat_dialback: Workaround for Dialback with servers that violate RFC 6120 ยง 4.7.2 diff -r ceb594a14a18 -r 41ebdb331b94 mod_compat_dialback/README.markdown --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mod_compat_dialback/README.markdown Sun Oct 11 15:39:23 2015 +0200 @@ -0,0 +1,21 @@ +--- +summary: Workaround for Dialback with some servers that violate RFC 6120 +... + +This module provides a workaround for servers that do not set the `to` +attribute on stream headers, which is required per [RFC6120]: + +> ## 4.7.2. to +> +> For initial stream headers in both client-to-server and +> server-to-server communication, the initiating entity MUST include the +> 'to' attribute and MUST set its value to a domainpart that the +> initiating entity knows or expects the receiving entity to service. + +As a side effect of [this issue](https://prosody.im/issues/issue/285), +Prosody 0.10 will be unable to do [Dialback][xep220] with servers that +don't follow this. + +# Known servers affected + +* Openfire 3.10.2 (and probably earlier versions) diff -r ceb594a14a18 -r 41ebdb331b94 mod_compat_dialback/mod_compat_dialback.lua --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mod_compat_dialback/mod_compat_dialback.lua Sun Oct 11 15:39:23 2015 +0200 @@ -0,0 +1,15 @@ +-- Prosody IM +-- Copyright (C) 2008-2010 Matthew Wild +-- Copyright (C) 2008-2010 Waqas Hussain +-- +-- This project is MIT/X11 licensed. Please see the +-- COPYING file in the source package for more information. +-- + +module:set_global(); + +module:global("s2s-stream-features-legacy", function (data) + if data.origin.type == "s2sin_unauthed" then + data.features:tag("dialback", { xmlns='urn:xmpp:features:dialback' }):up(); + end +end);