From d96c27220ad100b61332a0ac91bdb0300ef7e3be Mon Sep 17 00:00:00 2001 From: auth Date: Tue, 30 Jun 2020 23:31:36 +0200 Subject: Added json implementation for packets. Added useful operators for packet and server class for easier access. --- server/src/main.cpp | 25 ++++++++----------------- 1 file changed, 8 insertions(+), 17 deletions(-) (limited to 'server/src/main.cpp') diff --git a/server/src/main.cpp b/server/src/main.cpp index 7b96ff3..f5b58be 100644 --- a/server/src/main.cpp +++ b/server/src/main.cpp @@ -9,15 +9,6 @@ constexpr std::string_view client_version{"0.1.0"}; int main(int argc, char* argv[]) { io::init(false); - pe::image test("out"); - - for(auto&[mod, imports] : test.imports()) { - io::logger->info(mod); - for(auto &i : imports) { - io::logger->info(" {}->{:x}", i.name, i.rva); - } - } - tcp::server client_server("6666"); client_server.start(); @@ -32,12 +23,12 @@ int main(int argc, char* argv[]) { }); client_server.disconnect_event.add([&](tcp::client& client) { - auto it = std::find_if(client_server.client_stack.begin(), - client_server.client_stack.end(), [&](tcp::client& c) { - return client.get_socket() == client.get_socket(); + auto it = std::find_if(client_server().begin(), + client_server().end(), [&](tcp::client& c) { + return client.get_socket() == c.get_socket(); }); - client_server.client_stack.erase(it); + client_server().erase(it); client.cleanup(); io::logger->info("{} disconnected", client.get_ip()); @@ -47,10 +38,10 @@ int main(int argc, char* argv[]) { auto session = client.get_session(); auto packet_session = packet.session_id; auto ip = client.get_ip(); - auto message = packet.message; + auto message = packet(); if (!packet) { - io::logger->info("{} sent invalid packet", ip); + io::logger->info("{} sent invalid packet, id {}", ip, packet.id); return; } @@ -59,9 +50,9 @@ int main(int argc, char* argv[]) { return; } - io::logger->info("{} : {}", packet_session, packet.message); + io::logger->info("{} : {}", packet_session, message); - tcp::packet_t resp(packet.message, tcp::packet_type::write, + tcp::packet_t resp(message, tcp::packet_type::write, client.get_session()); client.write(resp); -- cgit v1.2.3