| Index: net/socket/stream_listen_socket.cc
|
| diff --git a/net/socket/stream_listen_socket.cc b/net/socket/stream_listen_socket.cc
|
| index fd164a556d5b3f0235794e4e939be61f4cd7459d..5f3a914db35580c1e95b164f6b92341d1c62e3ea 100644
|
| --- a/net/socket/stream_listen_socket.cc
|
| +++ b/net/socket/stream_listen_socket.cc
|
| @@ -86,18 +86,7 @@ void StreamListenSocket::Send(const string& str, bool append_linefeed) {
|
| }
|
|
|
| int StreamListenSocket::GetLocalAddress(IPEndPoint* address) {
|
| - SockaddrStorage storage;
|
| - if (getsockname(socket_, storage.addr, &storage.addr_len)) {
|
| -#if defined(OS_WIN)
|
| - int err = WSAGetLastError();
|
| -#else
|
| - int err = errno;
|
| -#endif
|
| - return MapSystemError(err);
|
| - }
|
| - if (!address->FromSockAddr(storage.addr, storage.addr_len))
|
| - return ERR_ADDRESS_INVALID;
|
| - return OK;
|
| + return GetLocalAddressImpl(address);
|
| }
|
|
|
| int StreamListenSocket::GetPeerAddress(IPEndPoint* address) {
|
| @@ -322,4 +311,19 @@ void StreamListenSocket::ResumeReads() {
|
| }
|
| }
|
|
|
| +int StreamListenSocket::GetLocalAddressImpl(IPEndPoint* address) {
|
| + SockaddrStorage storage;
|
| + if (getsockname(socket_, storage.addr, &storage.addr_len)) {
|
| +#if defined(OS_WIN)
|
| + int err = WSAGetLastError();
|
| +#else
|
| + int err = errno;
|
| +#endif
|
| + return MapSystemError(err);
|
| + }
|
| + if (!address->FromSockAddr(storage.addr, storage.addr_len))
|
| + return ERR_ADDRESS_INVALID;
|
| + return OK;
|
| +}
|
| +
|
| } // namespace net
|
|
|