Index: third_party/WebKit/Source/core/inspector/InspectorResourceAgent.cpp |
diff --git a/third_party/WebKit/Source/core/inspector/InspectorResourceAgent.cpp b/third_party/WebKit/Source/core/inspector/InspectorResourceAgent.cpp |
index 8e8380cf863e19fe450bee658f546673c3d6b06e..36b3d3d5538c6ab568097d5a50b93e7a878460ad 100644 |
--- a/third_party/WebKit/Source/core/inspector/InspectorResourceAgent.cpp |
+++ b/third_party/WebKit/Source/core/inspector/InspectorResourceAgent.cpp |
@@ -412,11 +412,28 @@ static PassOwnPtr<protocol::Network::Response> buildObjectForResourceResponse(co |
.setNumInvalidScts(numInvalidSCTs) |
.setNumValidScts(numValidSCTs).build(); |
+ // Add all SCT(s) to an array. |
+ OwnPtr<protocol::Array<protocol::Network::SignedCertificateTimestamp>> signedCertificateTimestampList = protocol::Array<protocol::Network::SignedCertificateTimestamp>::create(); |
+ for (auto const& sct : responseSecurityDetails->sctList) { |
+ OwnPtr<protocol::Network::SignedCertificateTimestamp> signedCertificateTimestamp = protocol::Network::SignedCertificateTimestamp::create() |
+ .setStatus(sct.status) |
+ .setOrigin(sct.origin) |
+ .setVersion(sct.version) |
+ .setLogDescription(sct.logDescription) |
+ .setLogId(sct.logId) |
+ .setTimestamp(sct.timestamp) |
+ .setHashAlgorithm(sct.hashAlgorithm) |
+ .setSignatureAlgorithm(sct.signatureAlgorithm) |
+ .setSignatureData(sct.signatureData).build(); |
+ signedCertificateTimestampList->addItem(signedCertificateTimestamp.release()); |
+ } |
+ |
OwnPtr<protocol::Network::SecurityDetails> securityDetails = protocol::Network::SecurityDetails::create() |
.setProtocol(responseSecurityDetails->protocol) |
.setKeyExchange(responseSecurityDetails->keyExchange) |
.setCipher(responseSecurityDetails->cipher) |
- .setCertificateId(responseSecurityDetails->certID).build(); |
+ .setCertificateId(responseSecurityDetails->certID) |
+ .setSignedCertificateTimestampList(signedCertificateTimestampList.release()).build(); |
securityDetails->setCertificateValidationDetails(certificateValidationDetails.release()); |
if (responseSecurityDetails->mac.length() > 0) |
securityDetails->setMac(responseSecurityDetails->mac); |