Commit c2704047 authored by Wojciech Dzierżanowski's avatar Wojciech Dzierżanowski Committed by Commit Bot

Clarify that ProxyDelegate tunnel methods are for HTTP/1.x

Bug: 926427
TBR: tbansal@chromium.org
Change-Id: Ic31bc0c40a1b21c45a3d5a47c13e07255a144234
Reviewed-on: https://chromium-review.googlesource.com/c/1457317
Commit-Queue: Wojciech Dzierżanowski <wdzierzanowski@opera.com>
Reviewed-by: default avatarMatt Menke <mmenke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#630046}
parent 27fd2f84
......@@ -153,7 +153,7 @@ void DataReductionProxyDelegate::OnFallback(const net::ProxyServer& bad_proxy,
bypass_stats_->OnProxyFallback(bad_proxy, net_error);
}
net::Error DataReductionProxyDelegate::OnTunnelHeadersReceived(
net::Error DataReductionProxyDelegate::OnHttp1TunnelHeadersReceived(
const net::ProxyServer& proxy_server,
const net::HttpResponseHeaders& response_headers) {
return net::OK;
......
......@@ -44,9 +44,10 @@ class DataReductionProxyDelegate : public net::ProxyDelegate {
const net::ProxyRetryInfoMap& proxy_retry_info,
net::ProxyInfo* result) override;
void OnFallback(const net::ProxyServer& bad_proxy, int net_error) override;
void OnBeforeTunnelRequest(const net::ProxyServer& proxy_server,
net::HttpRequestHeaders* extra_headers) override {}
net::Error OnTunnelHeadersReceived(
void OnBeforeHttp1TunnelRequest(
const net::ProxyServer& proxy_server,
net::HttpRequestHeaders* extra_headers) override {}
net::Error OnHttp1TunnelHeadersReceived(
const net::ProxyServer& proxy_server,
const net::HttpResponseHeaders& response_headers) override;
......
......@@ -47,17 +47,20 @@ class NET_EXPORT ProxyDelegate {
virtual void OnFallback(const ProxyServer& bad_proxy,
int net_error) = 0;
// Called immediately before a proxy tunnel request is sent.
// Called immediately before a HTTP/1.x proxy tunnel request is sent.
// Provides the embedder an opportunity to add extra request headers.
virtual void OnBeforeTunnelRequest(const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) = 0;
// Not called for HTTP/2 or QUIC tunnels.
virtual void OnBeforeHttp1TunnelRequest(
const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) = 0;
// Called when the response headers for the proxy tunnel request have been
// received. Allows the delegate to override the net error code of the tunnel
// request. Returning OK causes the standard tunnel response handling to be
// performed. Implementations should make sure they can trust |proxy_server|
// before making decisions based on |response_headers|.
virtual Error OnTunnelHeadersReceived(
// Called when the response headers for the HTTP/1.x proxy tunnel request
// have been received. Allows the delegate to override the net error code of
// the tunnel request. Returning OK causes the standard tunnel response
// handling to be performed. Implementations should make sure they can trust
// |proxy_server| before making decisions based on |response_headers|.
// Not called for HTTP/2 or QUIC tunnels.
virtual Error OnHttp1TunnelHeadersReceived(
const ProxyServer& proxy_server,
const HttpResponseHeaders& response_headers) = 0;
......
......@@ -17,7 +17,7 @@ TestProxyDelegate::TestProxyDelegate() = default;
TestProxyDelegate::~TestProxyDelegate() = default;
void TestProxyDelegate::VerifyOnTunnelHeadersReceived(
void TestProxyDelegate::VerifyOnHttp1TunnelHeadersReceived(
const ProxyServer& proxy_server,
const std::string& response_header_name,
const std::string& response_header_value) const {
......@@ -61,7 +61,7 @@ void TestProxyDelegate::OnResolveProxy(
void TestProxyDelegate::OnFallback(const ProxyServer& bad_proxy,
int net_error) {}
void TestProxyDelegate::OnBeforeTunnelRequest(
void TestProxyDelegate::OnBeforeHttp1TunnelRequest(
const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) {
on_before_tunnel_request_called_ = true;
......@@ -69,7 +69,7 @@ void TestProxyDelegate::OnBeforeTunnelRequest(
extra_headers->SetHeader("Foo", proxy_server.ToURI());
}
Error TestProxyDelegate::OnTunnelHeadersReceived(
Error TestProxyDelegate::OnHttp1TunnelHeadersReceived(
const ProxyServer& proxy_server,
const HttpResponseHeaders& response_headers) {
EXPECT_EQ(on_tunnel_headers_received_headers_.get(), nullptr);
......
......@@ -30,7 +30,7 @@ class TestProxyDelegate : public ProxyDelegate {
trusted_spdy_proxy_ = proxy_server;
}
void VerifyOnTunnelHeadersReceived(
void VerifyOnHttp1TunnelHeadersReceived(
const ProxyServer& proxy_server,
const std::string& response_header_name,
const std::string& response_header_value) const;
......@@ -41,9 +41,9 @@ class TestProxyDelegate : public ProxyDelegate {
const ProxyRetryInfoMap& proxy_retry_info,
ProxyInfo* result) override;
void OnFallback(const ProxyServer& bad_proxy, int net_error) override;
void OnBeforeTunnelRequest(const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) override;
Error OnTunnelHeadersReceived(
void OnBeforeHttp1TunnelRequest(const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) override;
Error OnHttp1TunnelHeadersReceived(
const ProxyServer& proxy_server,
const HttpResponseHeaders& response_headers) override;
......
......@@ -386,8 +386,8 @@ int HttpProxyClientSocket::DoSendRequest() {
if (proxy_delegate_) {
HttpRequestHeaders proxy_delegate_headers;
proxy_delegate_->OnBeforeTunnelRequest(proxy_server_,
&proxy_delegate_headers);
proxy_delegate_->OnBeforeHttp1TunnelRequest(proxy_server_,
&proxy_delegate_headers);
extra_headers.MergeFrom(proxy_delegate_headers);
}
......@@ -440,8 +440,8 @@ int HttpProxyClientSocket::DoReadHeadersComplete(int result) {
base::Bind(&HttpResponseHeaders::NetLogCallback, response_.headers));
if (proxy_delegate_) {
int rv = proxy_delegate_->OnTunnelHeadersReceived(proxy_server_,
*response_.headers);
int rv = proxy_delegate_->OnHttp1TunnelHeadersReceived(proxy_server_,
*response_.headers);
if (rv != OK) {
DCHECK_NE(ERR_IO_PENDING, rv);
return rv;
......
......@@ -350,7 +350,7 @@ TEST_P(HttpProxyClientSocketPoolTest, ProxyDelegateExtraHeaders) {
callback_.callback(), pool_.get(), NetLogWithSource());
EXPECT_THAT(rv, IsOk());
proxy_delegate.VerifyOnTunnelHeadersReceived(
proxy_delegate.VerifyOnHttp1TunnelHeadersReceived(
proxy_server, response_header_name, response_header_value);
}
......
......@@ -221,10 +221,10 @@ class TestResolveProxyDelegate : public ProxyDelegate {
void OnFallback(const ProxyServer& bad_proxy, int net_error) override {}
void OnBeforeTunnelRequest(const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) override {}
void OnBeforeHttp1TunnelRequest(const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) override {}
Error OnTunnelHeadersReceived(
Error OnHttp1TunnelHeadersReceived(
const ProxyServer& proxy_server,
const HttpResponseHeaders& response_headers) override {
return OK;
......@@ -253,10 +253,10 @@ class TestProxyFallbackProxyDelegate : public ProxyDelegate {
num_proxy_fallback_called_++;
}
void OnBeforeTunnelRequest(const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) override {}
void OnBeforeHttp1TunnelRequest(const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) override {}
Error OnTunnelHeadersReceived(
Error OnHttp1TunnelHeadersReceived(
const ProxyServer& proxy_server,
const HttpResponseHeaders& response_headers) override {
return OK;
......
......@@ -247,10 +247,10 @@ class TestProxyDelegateWithProxyInfo : public ProxyDelegate {
void OnFallback(const ProxyServer& bad_proxy, int net_error) override {}
void OnBeforeTunnelRequest(const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) override {}
void OnBeforeHttp1TunnelRequest(const ProxyServer& proxy_server,
HttpRequestHeaders* extra_headers) override {}
Error OnTunnelHeadersReceived(
Error OnHttp1TunnelHeadersReceived(
const ProxyServer& proxy_server,
const HttpResponseHeaders& response_headers) override {
return OK;
......
......@@ -165,11 +165,11 @@ void NetworkServiceProxyDelegate::OnResolveProxy(
void NetworkServiceProxyDelegate::OnFallback(const net::ProxyServer& bad_proxy,
int net_error) {}
void NetworkServiceProxyDelegate::OnBeforeTunnelRequest(
void NetworkServiceProxyDelegate::OnBeforeHttp1TunnelRequest(
const net::ProxyServer& proxy_server,
net::HttpRequestHeaders* extra_headers) {}
net::Error NetworkServiceProxyDelegate::OnTunnelHeadersReceived(
net::Error NetworkServiceProxyDelegate::OnHttp1TunnelHeadersReceived(
const net::ProxyServer& proxy_server,
const net::HttpResponseHeaders& response_headers) {
return net::OK;
......
......@@ -52,9 +52,10 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkServiceProxyDelegate
const net::ProxyRetryInfoMap& proxy_retry_info,
net::ProxyInfo* result) override;
void OnFallback(const net::ProxyServer& bad_proxy, int net_error) override;
void OnBeforeTunnelRequest(const net::ProxyServer& proxy_server,
net::HttpRequestHeaders* extra_headers) override;
net::Error OnTunnelHeadersReceived(
void OnBeforeHttp1TunnelRequest(
const net::ProxyServer& proxy_server,
net::HttpRequestHeaders* extra_headers) override;
net::Error OnHttp1TunnelHeadersReceived(
const net::ProxyServer& proxy_server,
const net::HttpResponseHeaders& response_headers) override;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment