14 server_comment "The server did not return a hostname, odd."; |
14 server_comment "The server did not return a hostname, odd."; |
15 else |
15 else |
16 local stream_open = [[<stream:stream xmlns=']]..default_namespace..[[' |
16 local stream_open = [[<stream:stream xmlns=']]..default_namespace..[[' |
17 xmlns:stream='http://etherx.jabber.org/streams' version='1.0' id='abc' to=']]..hostname..[['>]]; |
17 xmlns:stream='http://etherx.jabber.org/streams' version='1.0' id='abc' to=']]..hostname..[['>]]; |
18 |
18 |
19 if not test(stream_open.."<message/>", ":features>$") then -- Oops, not ejabberd |
19 if not test(stream_open.."<message/>", ":features>$") then |
20 debug("Oops, not ejabberd (please report):", test(stream_open.."<message/>", ".*")); |
20 if test(stream_open, literal " from='dummyhost'") then |
21 server_name = nil; |
21 server_min_version = "1.x.x"; |
|
22 else |
|
23 debug("Oops, not ejabberd (please report):", test(stream_open.."<message/>", ".*")); |
|
24 server_name = nil; |
|
25 end |
22 return; |
26 return; |
23 end |
27 end |
24 |
28 |
25 if test(q_invalid_xml, " id='%d+'") then |
29 if test(q_invalid_xml, " id='%d+'") then |
26 server_min_version = "2.1.x"; |
30 server_min_version = "2.1.x"; |
27 elseif test(stream_open, literal "<compression ") then -- Only in 2.x |
31 elseif test(stream_open, literal "<compression ") then -- Only in 2.x |
28 server_min_version = "2.0.x"; |
32 server_min_version = "2.0.x"; |
29 elseif test(stream_open, "") then |
33 elseif test(stream_open, "") then |
30 server_min_version = "1.x.x"; |
34 server_min_version = "1.1.4"; |
31 else |
35 else |
32 server_comment "The server did not reply when we tried to open a stream"; |
36 server_comment "The server did not reply when we tried to open a stream"; |
33 end |
37 end |
34 |
38 |
35 end |
39 end |