UDP_Socket::UDP_Socket(const Uint16 &port) : sock(0) { get_Net(); sock = SDLNet_UDP_Open(port); if(!sock) throw UDP_Socket_Init_Failure(); }
UDP_Socket::UDP_Socket(const unsigned short &port) : sock(0) { get_Net(); sock = SDLNet_UDP_Open(port); if(!sock) throw UDP_Socket_Init_Failure(); }
TCP_Listener::TCP_Listener(const Uint16 &port) : sock(0) { get_Net(); IPaddress ip = {0, 0}; SDLNet_Write16(port, &ip.port); sock = SDLNet_TCP_Open(&ip); if(!sock) throw TCP_Socket_Init_Failure(); }
TCP_Socket::TCP_Socket(IPaddress ip) : sock(0), sockset(0) { get_Net(); if(!ip.host) throw TCP_Socket_Init_Failure(); sock = SDLNet_TCP_Open(&ip); sockset = SDLNet_AllocSocketSet(1); if(!sock || !sockset || SDLNet_TCP_AddSocket(sockset, sock) == -1) { SDLNet_TCP_Close(sock); SDLNet_FreeSocketSet(sockset); throw TCP_Socket_Init_Failure(); } }