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_DNS_DNS_CONFIG_SERVICE_H_ | 5 #ifndef NET_DNS_DNS_CONFIG_SERVICE_H_ |
6 #define NET_DNS_DNS_CONFIG_SERVICE_H_ | 6 #define NET_DNS_DNS_CONFIG_SERVICE_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 // Minimum number of dots before global resolution precedes |search|. | 76 // Minimum number of dots before global resolution precedes |search|. |
77 int ndots; | 77 int ndots; |
78 // Time between retransmissions, see res_state.retrans. | 78 // Time between retransmissions, see res_state.retrans. |
79 base::TimeDelta timeout; | 79 base::TimeDelta timeout; |
80 // Maximum number of attempts, see res_state.retry. | 80 // Maximum number of attempts, see res_state.retry. |
81 int attempts; | 81 int attempts; |
82 // Round robin entries in |nameservers| for subsequent requests. | 82 // Round robin entries in |nameservers| for subsequent requests. |
83 bool rotate; | 83 bool rotate; |
84 // Enable EDNS0 extensions. | 84 // Enable EDNS0 extensions. |
85 bool edns0; | 85 bool edns0; |
| 86 |
| 87 // Indicates system configuration uses local IPv6 connectivity, e.g., |
| 88 // DirectAccess. This is exposed for HostResolver to skip IPv6 probes, |
| 89 // as it may cause them to return incorrect results. |
| 90 bool use_local_ipv6; |
86 }; | 91 }; |
87 | 92 |
88 | 93 |
89 // Service for reading system DNS settings, on demand or when signalled by | 94 // Service for reading system DNS settings, on demand or when signalled by |
90 // internal watchers and NetworkChangeNotifier. | 95 // internal watchers and NetworkChangeNotifier. |
91 class NET_EXPORT_PRIVATE DnsConfigService | 96 class NET_EXPORT_PRIVATE DnsConfigService |
92 : NON_EXPORTED_BASE(public base::NonThreadSafe) { | 97 : NON_EXPORTED_BASE(public base::NonThreadSafe) { |
93 public: | 98 public: |
94 // Callback interface for the client, called on the same thread as | 99 // Callback interface for the client, called on the same thread as |
95 // ReadConfig() and WatchConfig(). | 100 // ReadConfig() and WatchConfig(). |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
169 | 174 |
170 // Started in Invalidate*, cleared in On*Read. | 175 // Started in Invalidate*, cleared in On*Read. |
171 base::OneShotTimer<DnsConfigService> timer_; | 176 base::OneShotTimer<DnsConfigService> timer_; |
172 | 177 |
173 DISALLOW_COPY_AND_ASSIGN(DnsConfigService); | 178 DISALLOW_COPY_AND_ASSIGN(DnsConfigService); |
174 }; | 179 }; |
175 | 180 |
176 } // namespace net | 181 } // namespace net |
177 | 182 |
178 #endif // NET_DNS_DNS_CONFIG_SERVICE_H_ | 183 #endif // NET_DNS_DNS_CONFIG_SERVICE_H_ |
OLD | NEW |