| OLD | NEW | 
|   1 // Copyright 2014 The Chromium Authors. All rights reserved. |   1 // Copyright 2014 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 #include "chrome/browser/safe_browsing/incident_reporting/binary_integrity_analy
    zer.h" |   5 #include "chrome/browser/safe_browsing/incident_reporting/binary_integrity_analy
    zer.h" | 
|   6  |   6  | 
|   7 #include <string> |   7 #include <string> | 
|   8 #include <utility> |   8 #include <utility> | 
|   9  |   9  | 
|  10 #include "base/bind.h" |  10 #include "base/bind.h" | 
|  11 #include "base/callback.h" |  11 #include "base/callback.h" | 
|  12 #include "base/files/file_util.h" |  12 #include "base/files/file_util.h" | 
 |  13 #include "base/memory/ptr_util.h" | 
|  13 #include "base/metrics/histogram.h" |  14 #include "base/metrics/histogram.h" | 
|  14 #include "base/strings/string_number_conversions.h" |  15 #include "base/strings/string_number_conversions.h" | 
|  15 #include "base/strings/string_util.h" |  16 #include "base/strings/string_util.h" | 
|  16 #include "base/strings/stringprintf.h" |  17 #include "base/strings/stringprintf.h" | 
|  17 #include "base/time/time.h" |  18 #include "base/time/time.h" | 
|  18 #include "build/build_config.h" |  19 #include "build/build_config.h" | 
|  19 #include "chrome/browser/browser_process.h" |  20 #include "chrome/browser/browser_process.h" | 
|  20 #include "chrome/browser/safe_browsing/incident_reporting/binary_integrity_incid
    ent.h" |  21 #include "chrome/browser/safe_browsing/incident_reporting/binary_integrity_incid
    ent.h" | 
|  21 #include "chrome/browser/safe_browsing/incident_reporting/incident_receiver.h" |  22 #include "chrome/browser/safe_browsing/incident_reporting/incident_receiver.h" | 
|  22 #include "chrome/browser/safe_browsing/safe_browsing_service.h" |  23 #include "chrome/browser/safe_browsing/safe_browsing_service.h" | 
| (...skipping 10 matching lines...) Expand all  Loading... | 
|  33           std::string(kHistogramName) + base::SizeTToString(file_index), |  34           std::string(kHistogramName) + base::SizeTToString(file_index), | 
|  34           base::TimeDelta::FromMilliseconds(1), |  35           base::TimeDelta::FromMilliseconds(1), | 
|  35           base::TimeDelta::FromSeconds(20), 50, |  36           base::TimeDelta::FromSeconds(20), 50, | 
|  36           base::Histogram::kUmaTargetedHistogramFlag); |  37           base::Histogram::kUmaTargetedHistogramFlag); | 
|  37  |  38  | 
|  38   signature_verification_time_histogram->AddTime(verification_time); |  39   signature_verification_time_histogram->AddTime(verification_time); | 
|  39 } |  40 } | 
|  40  |  41  | 
|  41 void ClearBinaryIntegrityForFile(IncidentReceiver* incident_receiver, |  42 void ClearBinaryIntegrityForFile(IncidentReceiver* incident_receiver, | 
|  42                                  const std::string& basename) { |  43                                  const std::string& basename) { | 
|  43   scoped_ptr<ClientIncidentReport_IncidentData_BinaryIntegrityIncident> |  44   std::unique_ptr<ClientIncidentReport_IncidentData_BinaryIntegrityIncident> | 
|  44       incident(new ClientIncidentReport_IncidentData_BinaryIntegrityIncident()); |  45       incident(new ClientIncidentReport_IncidentData_BinaryIntegrityIncident()); | 
|  45   incident->set_file_basename(basename); |  46   incident->set_file_basename(basename); | 
|  46   incident_receiver->ClearIncidentForProcess( |  47   incident_receiver->ClearIncidentForProcess( | 
|  47       make_scoped_ptr(new BinaryIntegrityIncident(std::move(incident)))); |  48       base::WrapUnique(new BinaryIntegrityIncident(std::move(incident)))); | 
|  48 } |  49 } | 
|  49  |  50  | 
|  50 void RegisterBinaryIntegrityAnalysis() { |  51 void RegisterBinaryIntegrityAnalysis() { | 
|  51 #if defined(OS_WIN) || defined(OS_MACOSX) |  52 #if defined(OS_WIN) || defined(OS_MACOSX) | 
|  52   scoped_refptr<SafeBrowsingService> safe_browsing_service( |  53   scoped_refptr<SafeBrowsingService> safe_browsing_service( | 
|  53       g_browser_process->safe_browsing_service()); |  54       g_browser_process->safe_browsing_service()); | 
|  54  |  55  | 
|  55   safe_browsing_service->RegisterDelayedAnalysisCallback( |  56   safe_browsing_service->RegisterDelayedAnalysisCallback( | 
|  56       base::Bind(&VerifyBinaryIntegrity)); |  57       base::Bind(&VerifyBinaryIntegrity)); | 
|  57 #endif |  58 #endif | 
|  58 } |  59 } | 
|  59  |  60  | 
|  60 }  // namespace safe_browsing |  61 }  // namespace safe_browsing | 
| OLD | NEW |