+ scoped_array<char> buffer (new char[length]);
+ boost::asio::read (socket, boost::asio::buffer (reinterpret_cast<uint8_t*> (buffer.get ()), length));
+
+ string s (buffer.get());
+ shared_ptr<cxml::Document> xml (new cxml::Document ("ServerAvailable"));
+ xml->read_string (s);
+
+ string const ip = socket.remote_endpoint().address().to_string ();
+ if (!server_found (ip)) {