diff --git a/src/main.cpp b/src/main.cpp index 3d4422f..c7d3f2c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,8 +1,8 @@ #include "Logger.hpp" #include "Socket.hpp" -#include #include +#include using namespace std; @@ -23,11 +23,24 @@ int main() { * This is where client handling starts. * RECEIVING CLIENT PACKET * 1. Receive raw bytes, - * 2. Parse bytes from packet, - * 3. Put into components understandable for server. + * 2. Parse bytes from packet, put into components understandable for server. */ char buffer[131] = {}; - buffer[0] = recv(clientSocket, buffer, sizeof(buffer), 0); + int bytesRecv = recv(clientSocket, buffer, sizeof(buffer), 0); + + if(bytesRecv <= 0){ + log.err("No bytes received"); + closesocket(clientSocket); + return 1; + } + + uint8_t packID = buffer[0]; + uint8_t protVer = buffer[1]; + string username; username.assign(buffer + 2, 64); + string verKey; verKey.assign(buffer + 66, 64); + uint8_t unused = buffer[130]; + + log.info(username + " connected"); } return 0;