Applied patch [ 837515 ] wxIPaddress + docs patch
(Ray Gilbert) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -52,24 +52,58 @@ private:
|
||||
void Init();
|
||||
};
|
||||
|
||||
class WXDLLIMPEXP_NET wxIPV4address : public wxSockAddress {
|
||||
// Interface to an IP address (either IPV4 or IPV6)
|
||||
class WXDLLIMPEXP_NET wxIPaddress : public wxSockAddress {
|
||||
DECLARE_ABSTRACT_CLASS(wxIPaddress)
|
||||
public:
|
||||
wxIPaddress();
|
||||
wxIPaddress(const wxIPaddress& other);
|
||||
virtual ~wxIPaddress();
|
||||
|
||||
virtual bool Hostname(const wxString& name) = 0;
|
||||
virtual bool Service(const wxString& name) = 0;
|
||||
virtual bool Service(unsigned short port) = 0;
|
||||
|
||||
virtual bool LocalHost() = 0;
|
||||
virtual bool IsLocalHost() const = 0;
|
||||
|
||||
virtual bool AnyAddress() = 0;
|
||||
|
||||
virtual wxString IPAddress() const = 0;
|
||||
|
||||
virtual wxString Hostname() const = 0;
|
||||
virtual unsigned short Service() const = 0;
|
||||
};
|
||||
|
||||
class WXDLLIMPEXP_NET wxIPV4address : public wxIPaddress {
|
||||
DECLARE_DYNAMIC_CLASS(wxIPV4address)
|
||||
public:
|
||||
wxIPV4address();
|
||||
wxIPV4address(const wxIPV4address& other);
|
||||
virtual ~wxIPV4address();
|
||||
|
||||
bool Hostname(const wxString& name);
|
||||
// IPV4 name formats
|
||||
//
|
||||
// hostname
|
||||
// dot format a.b.c.d
|
||||
virtual bool Hostname(const wxString& name);
|
||||
bool Hostname(unsigned long addr);
|
||||
bool Service(const wxString& name);
|
||||
bool Service(unsigned short port);
|
||||
bool LocalHost();
|
||||
bool AnyAddress();
|
||||
virtual bool Service(const wxString& name);
|
||||
virtual bool Service(unsigned short port);
|
||||
|
||||
wxString Hostname();
|
||||
// localhost (127.0.0.1)
|
||||
virtual bool LocalHost();
|
||||
virtual bool IsLocalHost() const;
|
||||
|
||||
// any (0.0.0.0)
|
||||
virtual bool AnyAddress();
|
||||
|
||||
virtual wxString Hostname() const;
|
||||
wxString OrigHostname() { return m_origHostname; }
|
||||
unsigned short Service();
|
||||
wxString IPAddress() const;
|
||||
virtual unsigned short Service() const;
|
||||
|
||||
// a.b.c.d
|
||||
virtual wxString IPAddress() const;
|
||||
|
||||
virtual int Type() { return wxSockAddress::IPV4; }
|
||||
virtual wxSockAddress *Clone() const;
|
||||
@@ -80,8 +114,12 @@ private:
|
||||
wxString m_origHostname;
|
||||
};
|
||||
|
||||
#ifdef ENABLE_IPV6
|
||||
class WXDLLIMPEXP_NET wxIPV6address : public wxSockAddress {
|
||||
#if wxUSE_IPV6
|
||||
|
||||
// Experimental Only:
|
||||
//
|
||||
// IPV6 has not yet been implemented in socket layer
|
||||
class WXDLLIMPEXP_NET wxIPV6address : public wxIPaddress {
|
||||
DECLARE_DYNAMIC_CLASS(wxIPV6address)
|
||||
private:
|
||||
struct sockaddr_in6 *m_addr;
|
||||
@@ -90,19 +128,37 @@ public:
|
||||
wxIPV6address(const wxIPV6address& other);
|
||||
virtual ~wxIPV6address();
|
||||
|
||||
bool Hostname(const wxString& name);
|
||||
bool Hostname(unsigned char addr[16]);
|
||||
bool Service(const wxString& name);
|
||||
bool Service(unsigned short port);
|
||||
bool LocalHost();
|
||||
// IPV6 name formats
|
||||
//
|
||||
// hostname
|
||||
// 3ffe:ffff:0100:f101:0210:a4ff:fee3:9566
|
||||
// compact (base85) Itu&-ZQ82s>J%s99FJXT
|
||||
// compressed format ::1
|
||||
// ipv4 mapped ::ffff:1.2.3.4
|
||||
virtual bool Hostname(const wxString& name);
|
||||
|
||||
wxString Hostname() const;
|
||||
unsigned short Service() const;
|
||||
bool Hostname(unsigned char addr[16]);
|
||||
virtual bool Service(const wxString& name);
|
||||
virtual bool Service(unsigned short port);
|
||||
|
||||
// localhost (0000:0000:0000:0000:0000:0000:0000:0001 (::1))
|
||||
virtual bool LocalHost();
|
||||
virtual bool IsLocalHost() const;
|
||||
|
||||
// any (0000:0000:0000:0000:0000:0000:0000:0000 (::))
|
||||
virtual bool AnyAddress();
|
||||
|
||||
// 3ffe:ffff:0100:f101:0210:a4ff:fee3:9566
|
||||
virtual wxString IPAddress() const;
|
||||
|
||||
virtual wxString Hostname() const;
|
||||
virtual unsigned short Service() const;
|
||||
|
||||
virtual int Type() { return wxSockAddress::IPV6; }
|
||||
virtual wxSockAddress *Clone() const { return new wxIPV6address(*this); }
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif // wxUSE_IPV6
|
||||
|
||||
#if defined(__UNIX__) && !defined(__WINE__) && (!defined(__WXMAC__) || defined(__DARWIN__))
|
||||
#include <sys/socket.h>
|
||||
|
Reference in New Issue
Block a user