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

Side by Side Diff: net/cert/signed_tree_head.cc

Issue 1758823002: Certificate Transparency: Ensure timestamps over 32 bit are handled correctly. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressing review comments Created 4 years, 9 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 unified diff | Download patch
« no previous file with comments | « net/cert/signed_tree_head.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "net/cert/signed_tree_head.h" 5 #include "net/cert/signed_tree_head.h"
6 6
7 #include <string.h> 7 #include <string.h>
8 8
9 #include <iostream>
10
9 #include "base/strings/string_number_conversions.h" 11 #include "base/strings/string_number_conversions.h"
10 12
11 namespace net { 13 namespace net {
12 namespace ct { 14 namespace ct {
13 15
14 SignedTreeHead::SignedTreeHead() {} 16 SignedTreeHead::SignedTreeHead() {}
15 17
16 SignedTreeHead::SignedTreeHead(Version version, 18 SignedTreeHead::SignedTreeHead(Version version,
17 const base::Time& timestamp, 19 const base::Time& timestamp,
18 uint64_t tree_size, 20 uint64_t tree_size,
19 const char sha256_root_hash[kSthRootHashLength], 21 const char sha256_root_hash[kSthRootHashLength],
20 const DigitallySigned& signature, 22 const DigitallySigned& signature,
21 const std::string& log_id) 23 const std::string& log_id)
22 : version(version), 24 : version(version),
23 timestamp(timestamp), 25 timestamp(timestamp),
24 tree_size(tree_size), 26 tree_size(tree_size),
25 signature(signature), 27 signature(signature),
26 log_id(log_id) { 28 log_id(log_id) {
27 memcpy(this->sha256_root_hash, sha256_root_hash, kSthRootHashLength); 29 memcpy(this->sha256_root_hash, sha256_root_hash, kSthRootHashLength);
28 } 30 }
29 31
30 SignedTreeHead::~SignedTreeHead() {} 32 SignedTreeHead::~SignedTreeHead() {}
31 33
32 std::ostream& operator<<(std::ostream& stream, const SignedTreeHead& sth) { 34 void PrintTo(const SignedTreeHead& sth, std::ostream* os) {
33 return stream << "{\n" 35 (*os) << "{\n"
34 << "\t\"version\": " << sth.version << ",\n" 36 << "\t\"version\": " << sth.version << ",\n"
35 << "\t\"timestamp\": " << sth.timestamp << ",\n" 37 << "\t\"timestamp\": " << sth.timestamp << ",\n"
36 << "\t\"tree_size\": " << sth.tree_size << ",\n" 38 << "\t\"tree_size\": " << sth.tree_size << ",\n"
37 << "\t\"sha256_root_hash\": \"" 39 << "\t\"sha256_root_hash\": \""
38 << base::HexEncode(sth.sha256_root_hash, kSthRootHashLength) 40 << base::HexEncode(sth.sha256_root_hash, kSthRootHashLength)
39 << "\",\n\t\"log_id\": \"" 41 << "\",\n\t\"log_id\": \""
40 << base::HexEncode(sth.log_id.data(), sth.log_id.size()) 42 << base::HexEncode(sth.log_id.data(), sth.log_id.size()) << "\"\n"
41 << "\"\n" 43 << "}";
42 << "}";
43 } 44 }
44 45
45 } // namespace ct 46 } // namespace ct
46 } // namespace net 47 } // namespace net
OLDNEW
« no previous file with comments | « net/cert/signed_tree_head.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698