+wxSockAddress *wxIPV4address::Clone() const
+{
+ wxIPV4address *addr = new wxIPV4address(*this);
+ addr->m_origHostname = m_origHostname;
+ return addr;
+}
+
+wxString wxIPV4address::IPAddress() const
+{
+ unsigned long raw = GAddress_INET_GetHostAddress(m_address);
+ return wxString::Format(_T("%lu.%lu.%lu.%lu"),
+ (raw>>24) & 0xff,
+ (raw>>16) & 0xff,
+ (raw>>8) & 0xff,
+ raw & 0xff
+ );
+}
+
+bool wxIPV4address::operator==(const wxIPV4address& addr) const
+{
+ return Hostname().Cmp(addr.Hostname()) == 0 &&
+ Service() == addr.Service();
+}
+
+#if wxUSE_IPV6