Address(const IPv6AddressBytes * ipv6_bytes, u16 port);
bool operator==(Address &address);
bool operator!=(Address &address);
+ // Resolve() may throw ResolveError (address is unchanged in this case)
void Resolve(const char *name);
struct sockaddr_in getAddress() const;
unsigned short getPort() const;
struct sockaddr_in6 getAddress6() const;
int getFamily() const;
bool isIPv6() const;
+ bool isZero() const;
void setPort(unsigned short port);
void print(std::ostream *s) const;
std::string serializeString() const;
public:
UDPSocket(bool ipv6);
~UDPSocket();
- void Bind(unsigned short port);
+ void Bind(Address addr);
//void Close();
//bool IsOpen();
void Send(const Address & destination, const void * data, int size);