Index: net/http/http_transaction.h |
diff --git a/net/http/http_transaction.h b/net/http/http_transaction.h |
index ed1b20dac2ffb8298c67c5bfc83d4850027b805b..db8ed5211b0d6c1c1c64aa178d7cff02edba0698 100644 |
--- a/net/http/http_transaction.h |
+++ b/net/http/http_transaction.h |
@@ -21,6 +21,7 @@ struct HttpRequestInfo; |
class HttpResponseInfo; |
class IOBuffer; |
struct LoadTimingInfo; |
+class ProxyInfo; |
class QuicServerInfo; |
class X509Certificate; |
@@ -33,6 +34,12 @@ class NET_EXPORT_PRIVATE HttpTransaction { |
// ResumeNetworkStart is called before establishing a connection. |
typedef base::Callback<void(bool* defer)> BeforeNetworkStartCallback; |
+ // Provides an opportunity to add proxy-specific request headers. Called after |
+ // it is determined that a proxy is being used and before the request headers |
+ // are sent. |proxy_info| contains information about the proxy being used. |
+ typedef base::Callback<void( |
+ const ProxyInfo& proxy_info)> BeforeProxyHeadersSentCallback; |
+ |
// Stops any pending IO and destroys the transaction object. |
virtual ~HttpTransaction() {} |
@@ -158,6 +165,11 @@ class NET_EXPORT_PRIVATE HttpTransaction { |
virtual void SetBeforeNetworkStartCallback( |
const BeforeNetworkStartCallback& callback) = 0; |
+ // Set the callback to receive notification just before a proxy request |
+ // is to be sent. |
+ virtual void SetBeforeProxyHeadersSentCallback( |
+ const BeforeProxyHeadersSentCallback& callback) = 0; |
+ |
// Resumes the transaction after being deferred. |
virtual int ResumeNetworkStart() = 0; |
}; |