#include "Socket/TCPSocket.hpp" #include "Socket/Log.hpp" #include "precomp.hpp" namespace Chattr { void TCPSocket::init(int domain) { init(domain, SOCK_STREAM, 0); valid_ = true; } void TCPSocket::listen(int __n) { int retVal = ::listen(sock_, __n); if (retVal == INVALID_SOCKET) log::critical("listen()"); } void TCPSocket::accept(TCPSocket& newSock, Address& __addr) { newSock.set(::accept(sock_, &__addr.addr, &__addr.length)); if (newSock == INVALID_SOCKET) log::critical("accept()"); } void TCPSocket::connect(Chattr::Address& serveraddr) { int retVal = ::connect(sock_, (struct sockaddr *)&serveraddr.addr, serveraddr.length); if (retVal == INVALID_SOCKET) log::critical("connect()"); } int TCPSocket::recv(void *__restrict __buf, size_t __n, int __flags) { int retVal = ::recv(sock_, __buf, __n, __flags); if (retVal == SOCKET_ERROR) log::error("recv()"); return retVal; } int TCPSocket::send(const void *__buf, size_t __n, int __flags) { int retVal = ::send(sock_, __buf, __n, __flags); if (retVal == SOCKET_ERROR) log::error("send()"); return retVal; } }