Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / chrome / browser / safe_browsing / incident_reporting / binary_integrity_incident.cc
blobcb154715164e7ecd8e760a599fefd06bb5501f36
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "chrome/browser/safe_browsing/incident_reporting/binary_integrity_incident.h"
7 #include "base/logging.h"
8 #include "chrome/browser/safe_browsing/incident_reporting/incident_handler_util.h"
9 #include "chrome/common/safe_browsing/csd.pb.h"
11 namespace safe_browsing {
13 BinaryIntegrityIncident::BinaryIntegrityIncident(
14 scoped_ptr<ClientIncidentReport_IncidentData_BinaryIntegrityIncident>
15 binary_integrity_incident) {
16 DCHECK(binary_integrity_incident);
17 DCHECK(binary_integrity_incident->has_file_basename());
18 payload()->set_allocated_binary_integrity(
19 binary_integrity_incident.release());
22 BinaryIntegrityIncident::~BinaryIntegrityIncident() {
25 IncidentType BinaryIntegrityIncident::GetType() const {
26 return IncidentType::BINARY_INTEGRITY;
29 // Returns the basename of the binary.
30 std::string BinaryIntegrityIncident::GetKey() const {
31 return payload()->binary_integrity().file_basename();
34 // Returns a digest computed over the payload.
35 uint32_t BinaryIntegrityIncident::ComputeDigest() const {
36 return HashMessage(payload()->binary_integrity());
39 } // namespace safe_browsing