X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5079735ca09bda02c88832500ee0d9fad46dc261..03ae811e42ea30bd7d627ed3368a4165c3d8d35c:/src/common/sckaddr.cpp?ds=sidebyside diff --git a/src/common/sckaddr.cpp b/src/common/sckaddr.cpp index e70932497f..b706132e5c 100644 --- a/src/common/sckaddr.cpp +++ b/src/common/sckaddr.cpp @@ -136,7 +136,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxUNIXaddress, wxSockAddress) typedef char wxGethostBuf[1024]; #endif -#ifdef HAVE_FUNC_GETSERVBYNAME_R_3 +#ifdef HAVE_FUNC_GETSERVBYNAME_R_4 struct wxGetservBuf : servent_data { wxGethostBuf() @@ -383,7 +383,7 @@ servent *deepCopyServent(servent *s, servent *wxGetservbyname_r(const char *port, const char *protocol, servent *serv, - wxGetservBuf buffer, + wxGetservBuf& buffer, int size) { servent *se; @@ -392,7 +392,8 @@ servent *wxGetservbyname_r(const char *port, #elif defined(HAVE_FUNC_GETSERVBYNAME_R_5) se = getservbyname_r(port, protocol, serv, buffer, size); #elif defined(HAVE_FUNC_GETSERVBYNAME_R_4) - se = getservbyname_r(port, protocol, serv, &buffer); + if ( getservbyname_r(port, protocol, serv, &buffer) != 0 ) + return NULL; #elif defined(HAVE_GETSERVBYNAME) wxLOCK_GETBY_MUTEX(serv); @@ -721,6 +722,16 @@ wxString wxSockAddressImpl::GetPath() const // wxSockAddress // ---------------------------------------------------------------------------- +const sockaddr *wxSockAddress::GetAddressData() const +{ + return GetAddress().GetAddr(); +} + +int wxSockAddress::GetAddressDataLen() const +{ + return GetAddress().GetLen(); +} + void wxSockAddress::Init() { if ( !wxSocketBase::IsInitialized() )