OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef NET_BASE_HOST_RESOLVER_IMPL_H_ | 5 #ifndef NET_BASE_HOST_RESOLVER_IMPL_H_ |
6 #define NET_BASE_HOST_RESOLVER_IMPL_H_ | 6 #define NET_BASE_HOST_RESOLVER_IMPL_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
241 | 241 |
242 // Starts Jobs according to their priority and the configured limits. | 242 // Starts Jobs according to their priority and the configured limits. |
243 PrioritizedDispatcher dispatcher_; | 243 PrioritizedDispatcher dispatcher_; |
244 | 244 |
245 // Limit on the maximum number of jobs queued in |dispatcher_|. | 245 // Limit on the maximum number of jobs queued in |dispatcher_|. |
246 size_t max_queued_jobs_; | 246 size_t max_queued_jobs_; |
247 | 247 |
248 // Parameters for ProcTask. | 248 // Parameters for ProcTask. |
249 ProcTaskParams proc_params_; | 249 ProcTaskParams proc_params_; |
250 | 250 |
| 251 NetLog* net_log_; |
| 252 |
251 // Address family to use when the request doesn't specify one. | 253 // Address family to use when the request doesn't specify one. |
252 AddressFamily default_address_family_; | 254 AddressFamily default_address_family_; |
253 | 255 |
254 base::WeakPtrFactory<HostResolverImpl> weak_ptr_factory_; | 256 base::WeakPtrFactory<HostResolverImpl> weak_ptr_factory_; |
255 | 257 |
256 base::WeakPtrFactory<HostResolverImpl> probe_weak_ptr_factory_; | 258 base::WeakPtrFactory<HostResolverImpl> probe_weak_ptr_factory_; |
257 | 259 |
258 // If present, used by DnsTask and ServeFromHosts to resolve requests. | 260 // If present, used by DnsTask and ServeFromHosts to resolve requests. |
259 scoped_ptr<DnsClient> dns_client_; | 261 scoped_ptr<DnsClient> dns_client_; |
260 | 262 |
261 // True if received valid config from |dns_config_service_|. Temporary, used | 263 // True if received valid config from |dns_config_service_|. Temporary, used |
262 // to measure performance of DnsConfigService: http://crbug.com/125599 | 264 // to measure performance of DnsConfigService: http://crbug.com/125599 |
263 bool received_dns_config_; | 265 bool received_dns_config_; |
264 | 266 |
265 // Number of consecutive failures of DnsTask, counted when fallback succeeds. | 267 // Number of consecutive failures of DnsTask, counted when fallback succeeds. |
266 unsigned num_dns_failures_; | 268 unsigned num_dns_failures_; |
267 | 269 |
268 // Indicate if probing is done after each network change event to set address | 270 // Indicate if probing is done after each network change event to set address |
269 // family. When false, explicit setting of address family is used and results | 271 // family. When false, explicit setting of address family is used and results |
270 // of the IPv6 probe job are ignored. | 272 // of the IPv6 probe job are ignored. |
271 bool ipv6_probe_monitoring_; | 273 bool ipv6_probe_monitoring_; |
272 | 274 |
| 275 // True iff ProcTask has successfully resolved a hostname known to have IPv6 |
| 276 // addresses using ADDRESS_FAMILY_UNSPECIFIED. Reset on IP address change. |
| 277 bool resolved_known_ipv6_hostname_; |
| 278 |
273 // Any resolver flags that should be added to a request by default. | 279 // Any resolver flags that should be added to a request by default. |
274 HostResolverFlags additional_resolver_flags_; | 280 HostResolverFlags additional_resolver_flags_; |
275 | 281 |
276 NetLog* net_log_; | |
277 | |
278 DISALLOW_COPY_AND_ASSIGN(HostResolverImpl); | 282 DISALLOW_COPY_AND_ASSIGN(HostResolverImpl); |
279 }; | 283 }; |
280 | 284 |
281 } // namespace net | 285 } // namespace net |
282 | 286 |
283 #endif // NET_BASE_HOST_RESOLVER_IMPL_H_ | 287 #endif // NET_BASE_HOST_RESOLVER_IMPL_H_ |
OLD | NEW |