diff options
author | sergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-27 19:39:39 +0000 |
---|---|---|
committer | sergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-27 19:39:39 +0000 |
commit | eddf10e99b05dc800637c39c4f7e89faba3e616a (patch) | |
tree | 90b3179dc20234af95ace693dec93ba62e117c36 /net/socket/tcp_server_socket_libevent.cc | |
parent | f443d9e856f6b7f714cf719bd8596c00af619308 (diff) | |
download | chromium_src-eddf10e99b05dc800637c39c4f7e89faba3e616a.zip chromium_src-eddf10e99b05dc800637c39c4f7e89faba3e616a.tar.gz chromium_src-eddf10e99b05dc800637c39c4f7e89faba3e616a.tar.bz2 |
Revert 87066 - Bind() methods for TCP sockets
BUG=80245
TEST=None
Review URL: http://codereview.chromium.org/7004055
TBR=sergeyu@chromium.org
Review URL: http://codereview.chromium.org/7087004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87070 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/socket/tcp_server_socket_libevent.cc')
-rw-r--r-- | net/socket/tcp_server_socket_libevent.cc | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/net/socket/tcp_server_socket_libevent.cc b/net/socket/tcp_server_socket_libevent.cc index 89119f6..daedbf5 100644 --- a/net/socket/tcp_server_socket_libevent.cc +++ b/net/socket/tcp_server_socket_libevent.cc @@ -58,7 +58,7 @@ int TCPServerSocketLibevent::Listen(const IPEndPoint& address, int backlog) { DCHECK_GT(backlog, 0); DCHECK_EQ(socket_, kInvalidSocket); - socket_ = socket(address.GetFamily(), SOCK_STREAM, IPPROTO_TCP); + socket_ = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); if (socket_ < 0) { PLOG(ERROR) << "socket() returned an error"; return MapSystemError(errno); @@ -142,8 +142,8 @@ int TCPServerSocketLibevent::AcceptInternal( socklen_t addr_len = sizeof(addr_storage); struct sockaddr* addr = reinterpret_cast<struct sockaddr*>(&addr_storage); - int new_socket = HANDLE_EINTR(accept(socket_, addr, &addr_len)); - if (new_socket < 0) { + int result = HANDLE_EINTR(accept(socket_, addr, &addr_len)); + if (result < 0) { int net_error = MapSystemError(errno); if (net_error != ERR_IO_PENDING) net_log_.EndEventWithNetErrorCode(NetLog::TYPE_TCP_ACCEPT, net_error); @@ -153,22 +153,16 @@ int TCPServerSocketLibevent::AcceptInternal( IPEndPoint address; if (!address.FromSockAddr(addr, addr_len)) { NOTREACHED(); - if (HANDLE_EINTR(close(new_socket)) < 0) + if (HANDLE_EINTR(close(result)) < 0) PLOG(ERROR) << "close"; net_log_.EndEventWithNetErrorCode(NetLog::TYPE_TCP_ACCEPT, ERR_FAILED); return ERR_FAILED; } - scoped_ptr<TCPClientSocket> tcp_socket(new TCPClientSocket( + TCPClientSocket* tcp_socket = new TCPClientSocket( AddressList::CreateFromIPAddress(address.address(), address.port()), - net_log_.net_log(), net_log_.source())); - int adopt_result = tcp_socket->AdoptSocket(new_socket); - if (adopt_result != OK) { - if (HANDLE_EINTR(close(new_socket)) < 0) - PLOG(ERROR) << "close"; - net_log_.EndEventWithNetErrorCode(NetLog::TYPE_TCP_ACCEPT, adopt_result); - return adopt_result; - } - socket->reset(tcp_socket.release()); + net_log_.net_log(), net_log_.source()); + tcp_socket->AdoptSocket(result); + socket->reset(tcp_socket); net_log_.EndEvent(NetLog::TYPE_TCP_ACCEPT, make_scoped_refptr(new NetLogStringParameter( "address", address.ToString()))); |