git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12585
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
typedef enum { IPV4=1, IPV6=2, UNIX=3 } Addr;
wxSockAddress();
typedef enum { IPV4=1, IPV6=2, UNIX=3 } Addr;
wxSockAddress();
+ wxSockAddress(const wxSockAddress& other);
virtual ~wxSockAddress();
virtual ~wxSockAddress();
+ wxSockAddress& operator=(const wxSockAddress& other);
+
virtual void Clear();
virtual int Type() = 0;
GAddress *GetAddress() const { return m_address; }
void SetAddress(GAddress *address);
virtual void Clear();
virtual int Type() = 0;
GAddress *GetAddress() const { return m_address; }
void SetAddress(GAddress *address);
- const wxSockAddress& operator =(const wxSockAddress& addr);
// we need to be able to create copies of the addresses polymorphically (i.e.
// wihtout knowing the exact address class)
// we need to be able to create copies of the addresses polymorphically (i.e.
// wihtout knowing the exact address class)
DECLARE_DYNAMIC_CLASS(wxIPV4address)
public:
wxIPV4address();
DECLARE_DYNAMIC_CLASS(wxIPV4address)
public:
wxIPV4address();
+ wxIPV4address(const wxIPV4address& other);
virtual ~wxIPV4address();
bool Hostname(const wxString& name);
virtual ~wxIPV4address();
bool Hostname(const wxString& name);
struct sockaddr_in6 *m_addr;
public:
wxIPV6address();
struct sockaddr_in6 *m_addr;
public:
wxIPV6address();
+ wxIPV6address(const wxIPV6address& other);
+ virtual ~wxIPV6address();
bool Hostname(const wxString& name);
bool Hostname(unsigned char addr[16]);
bool Hostname(const wxString& name);
bool Hostname(unsigned char addr[16]);
struct sockaddr_un *m_addr;
public:
wxUNIXaddress();
struct sockaddr_un *m_addr;
public:
wxUNIXaddress();
+ wxUNIXaddress(const wxUNIXaddress& other);
+ virtual ~wxUNIXaddress();
void Filename(const wxString& name);
wxString Filename();
void Filename(const wxString& name);
wxString Filename();
m_address = GAddress_new();
}
m_address = GAddress_new();
}
+wxSockAddress::wxSockAddress(const wxSockAddress& other)
+{
+ m_address = GAddress_copy(other.m_address);
+}
+
wxSockAddress::~wxSockAddress()
{
GAddress_destroy(m_address);
wxSockAddress::~wxSockAddress()
{
GAddress_destroy(m_address);
m_address = GAddress_copy(address);
}
m_address = GAddress_copy(address);
}
-const wxSockAddress& wxSockAddress::operator=(const wxSockAddress& addr)
+wxSockAddress& wxSockAddress::operator=(const wxSockAddress& addr)
{
SetAddress(addr.GetAddress());
return *this;
{
SetAddress(addr.GetAddress());
return *this;
// ---------------------------------------------------------------------------
wxIPV4address::wxIPV4address()
// ---------------------------------------------------------------------------
wxIPV4address::wxIPV4address()
+{
+}
+
+wxIPV4address::wxIPV4address(const wxIPV4address& other)
+ : wxSockAddress(other)
+wxIPV6address::wxIPV6address(const wxIPV6address& other)
+ : wxSockAddress(other)
+{
+}
+
wxIPV6address::~wxIPV6address()
{
}
wxIPV6address::~wxIPV6address()
{
}
return GAddress_INET_GetPort(m_address);
}
return GAddress_INET_GetPort(m_address);
}
#if defined(__UNIX__) && !defined(__WXMAC__)
#if defined(__UNIX__) && !defined(__WXMAC__)
// ---------------------------------------------------------------------------
// wxUNIXaddress
// ---------------------------------------------------------------------------
wxUNIXaddress::wxUNIXaddress()
// ---------------------------------------------------------------------------
// wxUNIXaddress
// ---------------------------------------------------------------------------
wxUNIXaddress::wxUNIXaddress()
+ : wxSockAddress()
+{
+}
+
+wxUNIXaddress::wxUNIXaddress(const wxUNIXaddress& other)
+ : wxSockAddress(other)