Chromium Code Reviews| Index: content/common/ssl_status_serialization.cc |
| diff --git a/content/common/ssl_status_serialization.cc b/content/common/ssl_status_serialization.cc |
| index 5f1b92415236aa62a5a33533ed3db4e9803f54fa..f0715c645ce76d23481daf74944013f9d78179fb 100644 |
| --- a/content/common/ssl_status_serialization.cc |
| +++ b/content/common/ssl_status_serialization.cc |
| @@ -5,6 +5,7 @@ |
| #include "content/common/ssl_status_serialization.h" |
| #include <stdint.h> |
| +#include <string> |
| #include "base/logging.h" |
| #include "base/pickle.h" |
| @@ -37,13 +38,9 @@ std::string SerializeSecurityInfo(const SSLStatus& ssl_status) { |
| pickle.WriteInt(ssl_status.security_bits); |
| pickle.WriteInt(ssl_status.key_exchange_info); |
| pickle.WriteInt(ssl_status.connection_status); |
| - pickle.WriteInt(ssl_status.signed_certificate_timestamp_ids.size()); |
| - for (SignedCertificateTimestampIDStatusList::const_iterator iter = |
| - ssl_status.signed_certificate_timestamp_ids.begin(); |
| - iter != ssl_status.signed_certificate_timestamp_ids.end(); ++iter) { |
| - pickle.WriteInt(iter->id); |
| - pickle.WriteUInt16(iter->status); |
| - } |
| + pickle.WriteInt(ssl_status.num_unknown_scts); |
| + pickle.WriteInt(ssl_status.num_invalid_scts); |
| + pickle.WriteInt(ssl_status.num_valid_scts); |
| return std::string(static_cast<const char*>(pickle.data()), pickle.size()); |
| } |
| @@ -58,13 +55,15 @@ bool DeserializeSecurityInfo(const std::string& state, SSLStatus* ssl_status) { |
| base::Pickle pickle(state.data(), static_cast<int>(state.size())); |
|
palmer
2016/04/26 23:12:01
This should maybe be a checked_cast (from base/num
dwaxweiler
2016/04/28 07:46:20
Acknowledged.
|
| base::PickleIterator iter(pickle); |
| int security_style; |
| - int num_scts_to_read; |
| - if (!iter.ReadInt(&security_style) || !iter.ReadInt(&ssl_status->cert_id) || |
| + if (!iter.ReadInt(&security_style) || |
| + !iter.ReadInt(&ssl_status->cert_id) || |
| !iter.ReadUInt32(&ssl_status->cert_status) || |
| !iter.ReadInt(&ssl_status->security_bits) || |
| !iter.ReadInt(&ssl_status->key_exchange_info) || |
| !iter.ReadInt(&ssl_status->connection_status) || |
| - !iter.ReadInt(&num_scts_to_read)) { |
| + !iter.ReadInt(&ssl_status->num_unknown_scts) || |
| + !iter.ReadInt(&ssl_status->num_invalid_scts) || |
| + !iter.ReadInt(&ssl_status->num_valid_scts)) { |
| *ssl_status = SSLStatus(); |
| return false; |
| } |
| @@ -88,19 +87,6 @@ bool DeserializeSecurityInfo(const std::string& state, SSLStatus* ssl_status) { |
| return false; |
| } |
| - for (; num_scts_to_read > 0; --num_scts_to_read) { |
| - int id; |
| - uint16_t status; |
| - if (!iter.ReadInt(&id) || !iter.ReadUInt16(&status)) { |
| - *ssl_status = SSLStatus(); |
| - return false; |
| - } |
| - |
| - ssl_status->signed_certificate_timestamp_ids.push_back( |
| - SignedCertificateTimestampIDAndStatus( |
| - id, static_cast<net::ct::SCTVerifyStatus>(status))); |
| - } |
| - |
| return true; |
| } |