summaryrefslogtreecommitdiffstats
path: root/net/proxy/proxy_list.h
diff options
context:
space:
mode:
Diffstat (limited to 'net/proxy/proxy_list.h')
-rw-r--r--net/proxy/proxy_list.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/net/proxy/proxy_list.h b/net/proxy/proxy_list.h
index 045b7b4..209dd67 100644
--- a/net/proxy/proxy_list.h
+++ b/net/proxy/proxy_list.h
@@ -35,6 +35,10 @@ class NET_EXPORT_PRIVATE ProxyList {
// them to the end of the fallback list.
void DeprioritizeBadProxies(const ProxyRetryInfoMap& proxy_retry_info);
+ // Returns true if this proxy list contains at least one proxy that is
+ // not currently present in |proxy_retry_info|.
+ bool HasUntriedProxies(const ProxyRetryInfoMap& proxy_retry_info) const;
+
// Delete any entry which doesn't have one of the specified proxy schemes.
// |scheme_bit_field| is a bunch of ProxyServer::Scheme bitwise ORed together.
void RemoveProxiesWithoutScheme(int scheme_bit_field);
@@ -70,6 +74,12 @@ class NET_EXPORT_PRIVATE ProxyList {
bool Fallback(ProxyRetryInfoMap* proxy_retry_info,
const BoundNetLog& net_log);
+ // Updates |proxy_retry_info| to indicate that the first proxy in the list
+ // is bad. This is distinct from Fallback(), above, to allow updating proxy
+ // retry information without modifying a given transction's proxy list.
+ void UpdateRetryInfoOnFallback(ProxyRetryInfoMap* proxy_retry_info,
+ const BoundNetLog& net_log) const;
+
private:
// List of proxies.
std::vector<ProxyServer> proxies_;