Allow s2s message of subdomain of XMPP domain when no components are found
Description
Hello,
it seems this bug is still around/reappeared in version 3.9.1. Again it is not possible to connect to a server in a subdomain of the xmpp.domain. The patch is quite similar to the old one from 2006. I have applied a patch for version 3.9.1 below.
Kind Regrads, Jürgen
— ./src/java/org/jivesoftware/openfire/spi/RoutingTableImpl.java~ 2014-02-06 15:39:46.000000000 +0100 +++ ./src/java/org/jivesoftware/openfire/spi/RoutingTableImpl.java 2014-03-17 11:33:56.198208000 +0100 @@ -236,6 +236,10 @@ else if (jid.getDomain().contains(serverName)) { // Packet sent to component hosted in this server routed = routeToComponent(jid, packet, routed); + if ( !routed ) { + // most likely not a component but a subdomain server + routed = routeToRemoteDomain(jid, packet, routed); + } } else { // Packet sent to remote server
else if (jid.getDomain().contains(serverName)) { + else if (jid.getDomain().contains(serverName) && hasComponentRoute(jid)) { // Packet sent to component hosted in this server routed = routeToComponent(jid, packet, routed); }
Hello,
it seems this bug is still around/reappeared in version 3.9.1. Again it is not possible to connect to a server in a subdomain of the xmpp.domain. The patch is quite similar to the old one from 2006. I have applied a patch for version 3.9.1 below.
Kind Regrads,
Jürgen
— ./src/java/org/jivesoftware/openfire/spi/RoutingTableImpl.java~ 2014-02-06 15:39:46.000000000 +0100
+++ ./src/java/org/jivesoftware/openfire/spi/RoutingTableImpl.java 2014-03-17 11:33:56.198208000 +0100
@@ -236,6 +236,10 @@
else if (jid.getDomain().contains(serverName)) {
// Packet sent to component hosted in this server
routed = routeToComponent(jid, packet, routed);
+ if ( !routed ) {
+ // most likely not a component but a subdomain server
+ routed = routeToRemoteDomain(jid, packet, routed);
+ }
}
else {
// Packet sent to remote server