X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a324a7bccf4bda8f4f2bf09daee8104cae953cee..eccf1b2c7651b72cce91a83e3f2778e6325a955b:/src/common/sckaddr.cpp diff --git a/src/common/sckaddr.cpp b/src/common/sckaddr.cpp index e6f63b2ca3..d3d0d06484 100644 --- a/src/common/sckaddr.cpp +++ b/src/common/sckaddr.cpp @@ -30,21 +30,21 @@ #include #endif -#include -#include -#include -#include +#include "wx/defs.h" +#include "wx/object.h" +#include "wx/log.h" +#include "wx/intl.h" +#include "wx/gsocket.h" +#include "wx/sckaddr.h" -#if !USE_SHARED_LIBRARY IMPLEMENT_ABSTRACT_CLASS(wxSockAddress, wxObject) IMPLEMENT_DYNAMIC_CLASS(wxIPV4address, wxSockAddress) #ifdef ENABLE_IPV6 IMPLEMENT_DYNAMIC_CLASS(wxIPV6address, wxSockAddress) #endif -#ifdef __UNIX__ +#if defined(__UNIX__) && !defined(__WXMAC_X__) IMPLEMENT_DYNAMIC_CLASS(wxUNIXaddress, wxSockAddress) #endif -#endif // --------------------------------------------------------------------------- // wxIPV4address @@ -101,18 +101,24 @@ wxIPV4address::~wxIPV4address() bool wxIPV4address::Hostname(const wxString& name) { - return (GAddress_INET_SetHostName(m_address, name.fn_str()) == GSOCK_NOERROR); + // Some people are sometimes fool. + if (name == wxT("")) + { + wxLogWarning( _("Trying to solve a NULL hostname: giving up") ); + return FALSE; + } + + return (GAddress_INET_SetHostName(m_address, name.mb_str()) == GSOCK_NOERROR); } bool wxIPV4address::Hostname(unsigned long addr) { - /* Need API */ - return TRUE; + return (GAddress_INET_SetHostAddress(m_address, addr) == GSOCK_NOERROR); } bool wxIPV4address::Service(const wxString& name) { - return (GAddress_INET_SetPortName(m_address, name.fn_str()) == GSOCK_NOERROR); + return (GAddress_INET_SetPortName(m_address, name.mb_str(), "tcp") == GSOCK_NOERROR); } bool wxIPV4address::Service(unsigned short port) @@ -125,6 +131,11 @@ bool wxIPV4address::LocalHost() return (GAddress_INET_SetHostName(m_address, "localhost") == GSOCK_NOERROR); } +bool wxIPV4address::AnyAddress() +{ + return (GAddress_INET_SetAnyAddress(m_address) == GSOCK_NOERROR); +} + wxString wxIPV4address::Hostname() { char hostname[1024]; @@ -139,7 +150,7 @@ unsigned short wxIPV4address::Service() return GAddress_INET_GetPort(m_address); } -#ifdef IPV6_ENABLE +#if 0 // --------------------------------------------------------------------------- // wxIPV6address // --------------------------------------------------------------------------- @@ -190,7 +201,7 @@ unsigned short wxIPV6address::Service() #endif -#ifdef __UNIX__ +#if defined(__UNIX__) && !defined(__WXMAC_X__) // --------------------------------------------------------------------------- // wxUNIXaddress // ---------------------------------------------------------------------------