fixed GH# 173: HTTPClientSession::proxyConnect forces DNS lookup of host names

This commit is contained in:
Guenter Obiltschnig
2013-05-24 19:46:34 +02:00
parent 367dcb3b31
commit 1f800c0a2b

View File

@@ -1,7 +1,7 @@
// //
// HTTPClientSession.cpp // HTTPClientSession.cpp
// //
// $Id: //poco/1.4/Net/src/HTTPClientSession.cpp#6 $ // $Id: //poco/1.4/Net/src/HTTPClientSession.cpp#8 $
// //
// Library: Net // Library: Net
// Package: HTTPClient // Package: HTTPClient
@@ -424,8 +424,10 @@ StreamSocket HTTPClientSession::proxyConnect()
{ {
HTTPClientSession proxySession(getProxyHost(), getProxyPort()); HTTPClientSession proxySession(getProxyHost(), getProxyPort());
proxySession.setTimeout(getTimeout()); proxySession.setTimeout(getTimeout());
SocketAddress targetAddress(getHost(), getPort()); std::string targetAddress(_host);
HTTPRequest proxyRequest(HTTPRequest::HTTP_CONNECT, targetAddress.toString(), HTTPMessage::HTTP_1_1); targetAddress.append(":");
NumberFormatter::append(targetAddress, _port);
HTTPRequest proxyRequest(HTTPRequest::HTTP_CONNECT, targetAddress, HTTPMessage::HTTP_1_1);
HTTPResponse proxyResponse; HTTPResponse proxyResponse;
proxyRequest.set("Proxy-Connection", "keep-alive"); proxyRequest.set("Proxy-Connection", "keep-alive");
proxyRequest.set("Host", getHost()); proxyRequest.set("Host", getHost());