| Index: chrome/browser/safe_browsing/client_side_detection_service.cc
|
| diff --git a/chrome/browser/safe_browsing/client_side_detection_service.cc b/chrome/browser/safe_browsing/client_side_detection_service.cc
|
| index d045bd92f986bdb383d437c264147a2dcbc2c2b4..24a2a9b20f7fa80016c3cf0e7574bf6cde937f51 100644
|
| --- a/chrome/browser/safe_browsing/client_side_detection_service.cc
|
| +++ b/chrome/browser/safe_browsing/client_side_detection_service.cc
|
| @@ -30,6 +30,7 @@
|
| #include "google_apis/google_api_keys.h"
|
| #include "net/base/escape.h"
|
| #include "net/base/load_flags.h"
|
| +#include "net/base/net_util.h"
|
| #include "net/http/http_response_headers.h"
|
| #include "net/http/http_status_code.h"
|
| #include "net/url_request/url_fetcher.h"
|
| @@ -117,13 +118,7 @@ ClientSideDetectionService::~ClientSideDetectionService() {
|
| ClientSideDetectionService* ClientSideDetectionService::Create(
|
| net::URLRequestContextGetter* request_context_getter) {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - scoped_ptr<ClientSideDetectionService> service(
|
| - new ClientSideDetectionService(request_context_getter));
|
| - if (!service->InitializePrivateNetworks()) {
|
| - UMA_HISTOGRAM_COUNTS("SBClientPhishing.InitPrivateNetworksFailed", 1);
|
| - return NULL;
|
| - }
|
| - return service.release();
|
| + return new ClientSideDetectionService(request_context_getter);
|
| }
|
|
|
| void ClientSideDetectionService::SetEnabledAndRefreshState(bool enabled) {
|
| @@ -196,14 +191,7 @@ bool ClientSideDetectionService::IsPrivateIPAddress(
|
| return true;
|
| }
|
|
|
| - for (std::vector<AddressRange>::const_iterator it =
|
| - private_networks_.begin();
|
| - it != private_networks_.end(); ++it) {
|
| - if (net::IPNumberMatchesPrefix(ip_number, it->first, it->second)) {
|
| - return true;
|
| - }
|
| - }
|
| - return false;
|
| + return net::IsIPAddressReserved(ip_number);
|
| }
|
|
|
| void ClientSideDetectionService::OnURLFetchComplete(
|
| @@ -594,32 +582,6 @@ int ClientSideDetectionService::GetNumReports(
|
| return report_times->size();
|
| }
|
|
|
| -bool ClientSideDetectionService::InitializePrivateNetworks() {
|
| - static const char* const kPrivateNetworks[] = {
|
| - "10.0.0.0/8",
|
| - "127.0.0.0/8",
|
| - "172.16.0.0/12",
|
| - "192.168.0.0/16",
|
| - // IPv6 address ranges
|
| - "fc00::/7",
|
| - "fec0::/10",
|
| - "::1/128",
|
| - };
|
| -
|
| - for (size_t i = 0; i < arraysize(kPrivateNetworks); ++i) {
|
| - net::IPAddressNumber ip_number;
|
| - size_t prefix_length;
|
| - if (net::ParseCIDRBlock(kPrivateNetworks[i], &ip_number, &prefix_length)) {
|
| - private_networks_.push_back(std::make_pair(ip_number, prefix_length));
|
| - } else {
|
| - DLOG(FATAL) << "Unable to parse IP address range: "
|
| - << kPrivateNetworks[i];
|
| - return false;
|
| - }
|
| - }
|
| - return true;
|
| -}
|
| -
|
| // static
|
| void ClientSideDetectionService::SetBadSubnets(const ClientSideModel& model,
|
| BadSubnetMap* bad_subnets) {
|
|
|