From 74d9d5db878b9c9dfa41ebb786f53699c0ad32c6 Mon Sep 17 00:00:00 2001 From: xX-TheDoctor-Xx Date: Sun, 21 Aug 2016 15:24:28 +0100 Subject: [PATCH] Changed InternalTags names to be lower case Removed parameter less constructor from TcpClient Added UdpClient files --- .../Release/VoidNetVS.tlog/CL.command.1.tlog | Bin 7466 -> 6898 bytes .../Release/VoidNetVS.tlog/CL.read.1.tlog | Bin 337586 -> 305822 bytes .../Release/VoidNetVS.tlog/CL.write.1.tlog | Bin 16432 -> 16872 bytes .../Release/VoidNetVS.tlog/unsuccessfulbuild | 0 VoidNetVS/VoidNetVS/VoidNetVS.vcxproj | 10 +++++++--- VoidNetVS/VoidNetVS/VoidNetVS.vcxproj.filters | 6 ++++++ include/Defs.hpp | 6 +++--- include/TcpClient.hpp | 1 - include/UdpClient.hpp | 8 +++++++- src/NetworkMessage.cpp | 5 ++--- src/TcpClient.cpp | 8 ++------ src/TcpClientWindows.cpp | 8 +++----- src/TcpServer.cpp | 6 +++--- src/UdpClient.cpp | 5 +++++ src/UdpClientWindows.cpp | 1 + src/VoidNetClient.cpp | 2 +- 16 files changed, 40 insertions(+), 26 deletions(-) create mode 100644 VoidNetVS/VoidNetVS/Release/VoidNetVS.tlog/unsuccessfulbuild create mode 100644 src/UdpClient.cpp create mode 100644 src/UdpClientWindows.cpp diff --git a/VoidNetVS/VoidNetVS/Release/VoidNetVS.tlog/CL.command.1.tlog b/VoidNetVS/VoidNetVS/Release/VoidNetVS.tlog/CL.command.1.tlog index ae829d4564ae654ac96988c90de5b57002c0ed95..76b2a9680faeef7e70f31ff1060afadf94f597d1 100644 GIT binary patch delta 66 zcmZ2w^~rQY7}Mq~u>)+A^_UbkYl%28Z4P5vz&1ICUuts$uNc$h4_tDa&q=&voXo+= U15z`2hM*cy;11*F8G=Pj00UJPvH$=8 delta 87 zcmexly2@%p7}Mr5?gea<9mM1|^RYi-oa`eaF*%P#ZSn^Wp3O|`zZfSgG3iX^5s}(# pASA{#xj{k=sO%2o<_3u(rpbCt3X=`EK^pHc0vT?b!-9e7Eh+{k7GR8W_?H9V4`W^uQRqZ|` delta 687 zcmah`u}cDB6o22HToDu^&EgPlhG`hJRC+3x*BRbf6b8+;L=cov)?(2hhS3KO;oKBO z9xaX4P#{T5lY~R~SM8RYr8Rt zw|Z=hmz&IQi`3%n;N?NU^mc{YZPWWER(??Oy2|{e1kF)_)<_|ZWXdAbQKv~o9;Zb_ zg*Ffk#4Ioc^s{he)f#aBwG5{zAoJiDG>NVX>?njEtti%&fX6&;U8gt(qm0wJZEacwaYKsUuW zvVzXD$pzL5lXcXkCf{NVnw%wUH(5bWVDm2HcZ`$&m@NVt<1+byozNr+j>!f3QJWLk qq8KM1P_uxDMNR&|#Rldkur*C~khB0R|G+9WImZlcGuV8HYpMWZ2R%3d delta 148 zcmaFS%($U}aYKsUW(7GN#?2pCk1$R?Ab4f+2QIeB2h=1cKhQcgSwW|2a-P1%<^`7D z7$<*VWt*fbGI@e(5LAr?P)KU>Ek+PuZt^`*g~{(s#U`(@?wOpx)->5cvSD%pkJ#iq o$DqjqTse~!I5Z~nS?NK=swSVa=mCpwu&|qKU?jJBjeZjg0D_D;q5uE@ diff --git a/VoidNetVS/VoidNetVS/Release/VoidNetVS.tlog/unsuccessfulbuild b/VoidNetVS/VoidNetVS/Release/VoidNetVS.tlog/unsuccessfulbuild new file mode 100644 index 0000000..e69de29 diff --git a/VoidNetVS/VoidNetVS/VoidNetVS.vcxproj b/VoidNetVS/VoidNetVS/VoidNetVS.vcxproj index 7cacbc9..e4924d7 100644 --- a/VoidNetVS/VoidNetVS/VoidNetVS.vcxproj +++ b/VoidNetVS/VoidNetVS/VoidNetVS.vcxproj @@ -38,18 +38,22 @@ - false + true - false + true - false + true + + + + true diff --git a/VoidNetVS/VoidNetVS/VoidNetVS.vcxproj.filters b/VoidNetVS/VoidNetVS/VoidNetVS.vcxproj.filters index 527b7fc..3d76a3a 100644 --- a/VoidNetVS/VoidNetVS/VoidNetVS.vcxproj.filters +++ b/VoidNetVS/VoidNetVS/VoidNetVS.vcxproj.filters @@ -89,6 +89,12 @@ src + + src + + + src + diff --git a/include/Defs.hpp b/include/Defs.hpp index 2d401a6..dd405ee 100644 --- a/include/Defs.hpp +++ b/include/Defs.hpp @@ -239,10 +239,10 @@ enum ConnectionCode enum InternalTags { - CONNECT = 254, - DISCONNECT = 255, + ConnectTag = 254, + DisconnectTag = 255, }; -#define IS_HANDSHAKE(name) name.subject == 1 && (name.tag == DISCONNECT || name.tag == CONNECT || name.tag == ConnectionCode::Accept || name.tag == ConnectionCode::Close || name.tag == ConnectionCode::Reject) +#define IS_HANDSHAKE(name) name.subject == 1 && (name.tag == DisconnectTag || name.tag == ConnectTag || name.tag == Accept || name.tag == Close || name.tag == Reject) #endif // DEFS_HPP \ No newline at end of file diff --git a/include/TcpClient.hpp b/include/TcpClient.hpp index 382dcff..fc86d8b 100644 --- a/include/TcpClient.hpp +++ b/include/TcpClient.hpp @@ -14,7 +14,6 @@ struct TcpClient { - TcpClient(); TcpClient(const SOCKET &socket); TcpClient(const std::string &ip); TcpClient(const std::string &ip, uint16 port = default_client_port); diff --git a/include/UdpClient.hpp b/include/UdpClient.hpp index e95709b..1c34328 100644 --- a/include/UdpClient.hpp +++ b/include/UdpClient.hpp @@ -5,9 +5,15 @@ #pragma once #endif +#include "Defs.hpp" +#include "NetworkMessage.hpp" + +#include +#include + struct UdpClient { - + }; #endif diff --git a/src/NetworkMessage.cpp b/src/NetworkMessage.cpp index 123d3b7..49a8965 100644 --- a/src/NetworkMessage.cpp +++ b/src/NetworkMessage.cpp @@ -81,7 +81,7 @@ const NetworkMessage &NetworkMessage::DecodeMessage(const NetworkBuffer &buffer) message.destination_id = Utility::BitConverter::ToUint16(buffer.body, 4); message.tag = buffer.body[6]; message.subject = Utility::BitConverter::ToUint8(buffer.body, 7); - message.valid = message.sender != -2 && message.tag != CONNECT && message.tag != DISCONNECT; + message.valid = message.sender != -2 && message.tag != ConnectTag && message.tag != DisconnectTag; if (Utility::BitConverter::ToInt32(buffer.header) < 9) return message; void *object; @@ -94,8 +94,7 @@ const NetworkMessage &NetworkMessage::DecodeMessage(const NetworkBuffer &buffer) message.sender = Utility::BitConverter::ToUint16(buffer.body, 1); message.tag = Utility::BitConverter::ToUint8(buffer.body, 3); message.subject = 1; - message.valid = message.sender != -2 && (message.tag == DISCONNECT || message.tag == CONNECT || message.tag == ConnectionCode::Accept || - message.tag == ConnectionCode::Close || message.tag == ConnectionCode::Reject); + message.valid = message.sender != -2 && IS_HANDSHAKE(message); return message; break; } diff --git a/src/TcpClient.cpp b/src/TcpClient.cpp index 0abd2d2..091e7f8 100644 --- a/src/TcpClient.cpp +++ b/src/TcpClient.cpp @@ -4,10 +4,6 @@ #include #include -TcpClient::TcpClient() -{ -} - TcpClient::TcpClient(const std::string &ip) : port(default_client_port) { initialize(ip); @@ -58,9 +54,9 @@ void TcpClient::receive_data(TcpClient *client) { if (IS_HANDSHAKE(message)) { - if (message.tag == CONNECT) // some user has connected - not us, never + if (message.tag == ConnectTag) // some user has connected - not us, never std::async(std::launch::async, client->OnConnect, message.sender); - else if (message.tag == DISCONNECT || message.tag == ConnectionCode::Close) // some user has disconnected + else if (message.tag == DisconnectTag || message.tag == Close) // some user has disconnected std::async(std::launch::async, client->OnDisconnect, message.sender); } else diff --git a/src/TcpClientWindows.cpp b/src/TcpClientWindows.cpp index 95a28ac..525d46d 100644 --- a/src/TcpClientWindows.cpp +++ b/src/TcpClientWindows.cpp @@ -12,12 +12,10 @@ TcpClient::TcpClient(const SOCKET & socket) bool TcpClient::initialize(const std::string &ip, uint16 port) { - if (ip.size() == 0 || std::count(ip.begin(), ip.end(), '.') != 4) + if (ip.size() == 0 || std::count(ip.begin(), ip.end(), '.') != 4 || port == 0) return false; - if (port == 0) - return false; ZeroMemory(&hints, sizeof(hints)); - hints.ai_family = AF_UNSPEC; + hints.ai_family = AF_INET; hints.ai_socktype = SOCK_STREAM; hints.ai_protocol = IPPROTO_TCP; @@ -82,7 +80,7 @@ bool TcpClient::Connect() NetworkMessage message(receive_data_array()); if (IS_HANDSHAKE(message)) { - if (message.tag == ConnectionCode::Accept) + if (message.tag == Accept) { receive = true; OnConnect(message.sender); diff --git a/src/TcpServer.cpp b/src/TcpServer.cpp index 5963aa3..31a990b 100644 --- a/src/TcpServer.cpp +++ b/src/TcpServer.cpp @@ -80,7 +80,7 @@ void TcpServer::SendMessage(const NetworkMessage & message) } case Server: // this will only send the message to the server { - if (message.tag == DISCONNECT) + if (message.tag == DisconnectTag) CloseSocket(message.sender); for (uint16 i = 0; i < OnMessageFunctions.size(); i++) OnMessageFunctions[i](message); @@ -152,13 +152,13 @@ void TcpServer::add_to_clients_list(TcpClient & client_socket) void TcpServer::RejectConnection(TcpClient &client) { - Handshake handshake(client.GetID(), ConnectionCode::Reject, ID); + Handshake handshake(client.GetID(), Reject, ID); SendMessage(Handshake::HandshakeToNetworkMessage(handshake)); } void TcpServer::AcceptConnection(uint16 id) { - Handshake handshake(id, ConnectionCode::Accept, AllAndMe); + Handshake handshake(id, Accept, AllAndMe); SendMessage(Handshake::HandshakeToNetworkMessage(handshake)); } diff --git a/src/UdpClient.cpp b/src/UdpClient.cpp new file mode 100644 index 0000000..7b8cb80 --- /dev/null +++ b/src/UdpClient.cpp @@ -0,0 +1,5 @@ +#include "UdpClient.hpp" + +#ifdef _MSC_VER +#include "UdpClientWindows.cpp" +#endif \ No newline at end of file diff --git a/src/UdpClientWindows.cpp b/src/UdpClientWindows.cpp new file mode 100644 index 0000000..8c55758 --- /dev/null +++ b/src/UdpClientWindows.cpp @@ -0,0 +1 @@ +#include "UdpClient.hpp" diff --git a/src/VoidNetClient.cpp b/src/VoidNetClient.cpp index dde69e3..0357647 100644 --- a/src/VoidNetClient.cpp +++ b/src/VoidNetClient.cpp @@ -37,7 +37,7 @@ void VoidNetClientAPI::SendMessageToAllAndMe(byte tag, byte subject, void *data) void VoidNetClientAPI::SendMessage(byte distribution_mode, uint16 destination_id, byte tag, byte subject, void *data) { - if (tag != CONNECT && tag != DISCONNECT) + if (tag != ConnectTag && tag != DisconnectTag) { NetworkMessage message; message.tag = tag;