diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2012-10-15 23:26:51 +0900 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2012-10-15 23:26:51 +0900 |
| commit | 841395f3321763368ad64d70e3835be33c92a845 (patch) | |
| tree | a24214ef93c987ffb4026d5832e6d7659039a19c /src/HttpRequestCommand.cc | |
| parent | c904aa50fedd354937cb1dc29044712404c0c785 (diff) | |
Perform SSL/TLS handshake after checking whether connection is established
Diffstat (limited to 'src/HttpRequestCommand.cc')
| -rw-r--r-- | src/HttpRequestCommand.cc | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/HttpRequestCommand.cc b/src/HttpRequestCommand.cc index 0a3f0375..e9e1f430 100644 --- a/src/HttpRequestCommand.cc +++ b/src/HttpRequestCommand.cc @@ -122,21 +122,20 @@ createHttpRequest(const SharedHandle<Request>& req, bool HttpRequestCommand::executeInternal() { //socket->setBlockingMode(); - if(getRequest()->getProtocol() == "https") { - if(!getSocket()->tlsConnect(getRequest()->getHost())) { - setReadCheckSocketIf(getSocket(), getSocket()->wantRead()); - setWriteCheckSocketIf(getSocket(), getSocket()->wantWrite()); - getDownloadEngine()->addCommand(this); - return false; - } - } if(httpConnection_->sendBufferIsEmpty()) { if(!checkIfConnectionEstablished (getSocket(), getRequest()->getConnectedHostname(), getRequest()->getConnectedAddr(), getRequest()->getConnectedPort())) { return true; } - + if(getRequest()->getProtocol() == "https") { + if(!getSocket()->tlsConnect(getRequest()->getHost())) { + setReadCheckSocketIf(getSocket(), getSocket()->wantRead()); + setWriteCheckSocketIf(getSocket(), getSocket()->wantWrite()); + getDownloadEngine()->addCommand(this); + return false; + } + } if(getSegments().empty()) { SharedHandle<HttpRequest> httpRequest (createHttpRequest(getRequest(), |
