servers/ejabberd.lua: Support for detection of ejabberd prior to 1.1.4

Wed, 21 Apr 2010 17:03:44 +0100

author
Matthew Wild <mwild1@gmail.com>
date
Wed, 21 Apr 2010 17:03:44 +0100
changeset 1
d9d0f9517ca0
parent 0
ba1cc6ad649d
child 2
1eabe33d7af7

servers/ejabberd.lua: Support for detection of ejabberd prior to 1.1.4

servers/ejabberd.lua file | annotate | diff | comparison | revisions
--- a/servers/ejabberd.lua	Thu Feb 18 16:02:11 2010 +0000
+++ b/servers/ejabberd.lua	Wed Apr 21 17:03:44 2010 +0100
@@ -16,9 +16,13 @@
 			local stream_open = [[<stream:stream xmlns=']]..default_namespace..[[' 
 				xmlns:stream='http://etherx.jabber.org/streams' version='1.0' id='abc' to=']]..hostname..[['>]];
 			
-			if not test(stream_open.."<message/>", ":features>$") then -- Oops, not ejabberd
-				debug("Oops, not ejabberd (please report):", test(stream_open.."<message/>", ".*"));
-				server_name = nil;
+			if not test(stream_open.."<message/>", ":features>$") then
+				if test(stream_open, literal " from='dummyhost'") then
+					server_min_version = "1.x.x";
+				else
+					debug("Oops, not ejabberd (please report):", test(stream_open.."<message/>", ".*"));
+					server_name = nil;
+				end
 				return;
 			end
 			
@@ -27,7 +31,7 @@
 			elseif test(stream_open, literal "<compression ") then -- Only in 2.x
 				server_min_version = "2.0.x";
 			elseif test(stream_open, "") then
-				server_min_version = "1.x.x";
+				server_min_version = "1.1.4";
 			else
 				server_comment "The server did not reply when we tried to open a stream";
 			end

mercurial