Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(86)

Unified Diff: net/dns/dns_config_service.cc

Issue 10832018: [net/dns] Remove check for DNS Changer. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: sync Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/dns/dns_config_service.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/dns/dns_config_service.cc
diff --git a/net/dns/dns_config_service.cc b/net/dns/dns_config_service.cc
index fc5b7503f235cfdc9c405524cd03e32a0afdb151..f17e32b73048a08a4ec84f2ac1c84eeb2ef1795c 100644
--- a/net/dns/dns_config_service.cc
+++ b/net/dns/dns_config_service.cc
@@ -11,54 +11,6 @@
namespace net {
-namespace {
-
-// Check if particular nameserver address is rogue. See:
-// http://www.fbi.gov/news/stories/2011/november/malware_110911/DNS-changer-malware.pdf
-bool CheckRogueDnsAddress(const IPAddressNumber& address) {
-#define U8(x) static_cast<unsigned char>(x)
- const struct Bounds {
- const unsigned char lower[4]; // inclusive
- const unsigned char upper[4]; // exclusive
- } cases[] = {
- { { U8('\x55'), U8('\xFF'), U8('\x70'), U8('\x00') }, // 85.255.112.0
- { U8('\x55'), U8('\xFF'), U8('\x80'), U8('\x00') } }, // 85.255.128.0
- { { U8('\x43'), U8('\xD2'), U8('\x00'), U8('\x00') }, // 67.210.0.0
- { U8('\x43'), U8('\xD2'), U8('\x10'), U8('\x00') } }, // 67.210.16.0
- { { U8('\x5D'), U8('\xBC'), U8('\xA0'), U8('\x00') }, // 93.188.160.0
- { U8('\x5D'), U8('\xBC'), U8('\xA8'), U8('\x00') } }, // 93.188.168.0
- { { U8('\x4D'), U8('\x43'), U8('\x53'), U8('\x00') }, // 77.67.83.0
- { U8('\x4D'), U8('\x43'), U8('\x54'), U8('\x00') } }, // 77.67.84.0
- { { U8('\x40'), U8('\x1C'), U8('\xB2'), U8('\x00') }, // 64.28.178.0
- { U8('\x40'), U8('\x1C'), U8('\xC0'), U8('\x00') } }, // 64.28.192.0
- };
-#undef U8
- for (unsigned i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) {
- const Bounds& bounds = cases[i];
- IPAddressNumber lower(bounds.lower, bounds.lower + 4);
- IPAddressNumber upper(bounds.upper, bounds.upper + 4);
- if (address.size() == kIPv6AddressSize) {
- lower = ConvertIPv4NumberToIPv6Number(lower);
- upper = ConvertIPv4NumberToIPv6Number(upper);
- }
- if ((lower <= address) && (address < upper))
- return true;
- }
- return false;
-}
-
-void CheckRogueDnsConfig(const DnsConfig& config) {
- for (size_t i = 0; i < config.nameservers.size(); ++i) {
- if (CheckRogueDnsAddress(config.nameservers[i].address())) {
- UMA_HISTOGRAM_BOOLEAN("AsyncDNS.DNSChangerDetected", true);
- return;
- }
- }
- UMA_HISTOGRAM_BOOLEAN("AsyncDNS.DNSChangerDetected", false);
-}
-
-} // namespace
-
// Default values are taken from glibc resolv.h.
DnsConfig::DnsConfig()
: append_to_multi_label_name(true),
@@ -122,8 +74,7 @@ base::Value* DnsConfig::ToValue() const {
DnsConfigService::DnsConfigService()
- : checked_rogue_dns_(false),
- have_config_(false),
+ : have_config_(false),
have_hosts_(false),
need_update_(false),
last_sent_empty_(true) {}
@@ -262,10 +213,6 @@ void DnsConfigService::OnCompleteConfig() {
timer_.Stop();
if (!need_update_)
return;
- if (!checked_rogue_dns_ && dns_config_.IsValid()) {
- CheckRogueDnsConfig(dns_config_);
- checked_rogue_dns_ = true;
- }
need_update_ = false;
last_sent_empty_ = false;
callback_.Run(dns_config_);
« no previous file with comments | « net/dns/dns_config_service.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698