diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2013-02-03 19:09:06 +0900 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2013-02-03 19:09:06 +0900 |
| commit | 98e7018599c010b56ade294942e2e7b3d58d1bb6 (patch) | |
| tree | 21278fcd6703169e43d62d25f86d3d5cd8958de7 /src/FtpNegotiationCommand.cc | |
| parent | 1c9cfccac4bdd16b8c6662eab9e58d6f517424d0 (diff) | |
Fix failure to set TCP_NODELAY on Windows
On Windows setting TCP_NODELAY after non-blocking connect fails
at least on Windows 7.
Diffstat (limited to 'src/FtpNegotiationCommand.cc')
| -rw-r--r-- | src/FtpNegotiationCommand.cc | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/src/FtpNegotiationCommand.cc b/src/FtpNegotiationCommand.cc index a5c804b9..03827b54 100644 --- a/src/FtpNegotiationCommand.cc +++ b/src/FtpNegotiationCommand.cc @@ -682,8 +682,7 @@ bool FtpNegotiationCommand::preparePasvConnect() { dataAddr.first.c_str(), pasvPort_)); dataSocket_.reset(new SocketCore()); - dataSocket_->establishConnection(dataAddr.first, pasvPort_); - dataSocket_->setTcpNodelay(true); + dataSocket_->establishConnection(dataAddr.first, pasvPort_, false); disableReadCheckSocket(); setWriteCheckSocket(dataSocket_); sequence_ = SEQ_SEND_REST_PASV; @@ -705,7 +704,6 @@ bool FtpNegotiationCommand::resolveProxy() proxyAddr_.c_str(), proxyReq->getPort())); dataSocket_.reset(new SocketCore()); dataSocket_->establishConnection(proxyAddr_, proxyReq->getPort()); - dataSocket_->setTcpNodelay(true); disableReadCheckSocket(); setWriteCheckSocket(dataSocket_); SharedHandle<SocketRecvBuffer> socketRecvBuffer @@ -741,7 +739,6 @@ bool FtpNegotiationCommand::sendTunnelRequest() getCuid(), proxyAddr_.c_str(), proxyReq->getPort())); dataSocket_->establishConnection(proxyAddr_, proxyReq->getPort()); - dataSocket_->setTcpNodelay(true); return false; } } @@ -870,7 +867,6 @@ bool FtpNegotiationCommand::waitConnection() disableReadCheckSocket(); setReadCheckSocket(getSocket()); dataSocket_ = serverSocket_->acceptConnection(); - dataSocket_->setTcpNodelay(true); sequence_ = SEQ_NEGOTIATION_COMPLETED; return false; } |
