X-Git-Url: http://developer.intra2net.com/git/?p=libt2n;a=blobdiff_plain;f=src%2Fcommand_server.cpp;fp=src%2Fcommand_server.cpp;h=2aa4fc0483c1c3aae3f21156edb84505e596ef85;hp=2a4a7b47fe2b8b877c5b87a29fd6f4c916e1ae15;hb=8104c8f70605ee24230e5988d7bf68e3fce7465a;hpb=91730468439e21dcf8d275d0f70d803c20ccaa7c diff --git a/src/command_server.cpp b/src/command_server.cpp index 2a4a7b4..2aa4fc0 100644 --- a/src/command_server.cpp +++ b/src/command_server.cpp @@ -34,6 +34,10 @@ #include "container.hxx" #include "log.hxx" +#ifdef HAVE_CONFIG_H +#include +#endif + using namespace std; namespace libt2n @@ -43,12 +47,23 @@ command_server::command_server(server& _s) : s(_s) { // register callback - s.add_callback(new_connection,bind(&command_server::new_connection_callback, boost::ref(*this), _1)); + s.add_callback(new_connection,bind(&command_server::send_hello, boost::ref(*this), _1)); } -void command_server::new_connection_callback(unsigned int conn_id) +void command_server::send_hello(unsigned int conn_id) { - cerr << "new connection callback: " << conn_id << endl; + server_connection* sc=s.get_connection(conn_id); + + ostringstream hello; + + hello << "T2Nv" << PROTOCOL_VERSION << ';'; + + int byteordercheck=1; + hello.write((char*)&byteordercheck,sizeof(byteordercheck)); + + hello << ';'; + + sc->write(hello.str()); } /// handle a command including deserialization and answering