#include "IPAddress.h" #include #include #include #include #include #include namespace core { IPAddress::IPAddress() { addressLength = sizeof(addr); } IPAddress::IPAddress(std::string address) { std::string url = address.substr(0, address.find(":")); std::string s_port = address.substr(address.find(":") + 1); std::stringstream convert(s_port); short int port = 0; convert >> port; IPAddress(url, port); } IPAddress::IPAddress(std::string address, int port) { memset(&addr, 0, sizeof(addr)); addr.sin_family = AF_INET; addr.sin_port = htons(port); struct hostent *hp = gethostbyname(address.c_str()); memcpy((void *)&addr.sin_addr, hp->h_addr_list[0], hp->h_length); addressLength = sizeof(addr); } IPAddress::~IPAddress() { } struct sockaddr * IPAddress::getPointer() { return (sockaddr *)&addr; } std::string IPAddress::getClientAddress() { std::string result; return result; } std::string IPAddress::getClientAddressAndPort() { std::stringstream out; out << inet_ntoa(addr.sin_addr); out << ":" << addr.sin_port; return out.str(); } int IPAddress::getClientPort() { int result = -1; return result; } }