diff --git a/src/Socket.cpp b/src/Socket.cpp index 324f2f4..2e2b487 100644 --- a/src/Socket.cpp +++ b/src/Socket.cpp @@ -2,20 +2,19 @@ sockaddr_in service; int Socket::winInit() - { WSADATA wsaData; if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) { - log.err("Network.Socket.winInit: Initialization error"); - return 1; + log.err("Network.Socket.winInit: Initialization error"); + return 1; } log.info("Network.Socket.winInit: WSA initialized"); mainSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); if (mainSocket == INVALID_SOCKET) { - log.err("Network.Socket.winInit: Error creating socket: " + std::to_string(WSAGetLastError())); - WSACleanup(); - return 1; + log.err("Network.Socket.winInit: Error creating socket: " + std::to_string(WSAGetLastError())); + WSACleanup(); + return 1; } log.info("Network.Socket.winInit: Socket created"); @@ -50,3 +49,13 @@ int Socket::winListen() log.info("Network.Socket.winInit: Listening on " + std::string(NET_SOCK_ADDR) + ":" + std::to_string(NET_SOCK_PORT)); return 0; } + +int Socket::winAccept(){ + SOCKET clientSocket = accept(socket.mainSocket, NULL, NULL); + if(clientSocket == INVALID_SOCKET){ + log.err("Accept failed: " + std::to_string(WSAGetLastError())); + continue; + } + log.info("Client connected"); + closesocket(clientSocket); +} diff --git a/src/Socket.hpp b/src/Socket.hpp index 79d3209..51d989d 100644 --- a/src/Socket.hpp +++ b/src/Socket.hpp @@ -8,15 +8,17 @@ class Socket { private: - Logger log; - SOCKET mainSocket = INVALID_SOCKET; + Logger log; + SOCKET mainSocket = INVALID_SOCKET; public: int pInit(); int pBind(); int pListen(); + int pAccept(); int winInit(); int winBind(); int winListen(); + int winAccept(); };