| Index: third_party/WebKit/Source/platform/network/ResourceResponse.cpp
|
| diff --git a/third_party/WebKit/Source/platform/network/ResourceResponse.cpp b/third_party/WebKit/Source/platform/network/ResourceResponse.cpp
|
| index 9dcc19e7939e166d9cfce4c5bd6cee41f54f8668..54b5d76db129287c4dbf1a4629b11d84bb16dee1 100644
|
| --- a/third_party/WebKit/Source/platform/network/ResourceResponse.cpp
|
| +++ b/third_party/WebKit/Source/platform/network/ResourceResponse.cpp
|
| @@ -35,9 +35,10 @@ namespace blink {
|
|
|
| namespace {
|
|
|
| -Vector<ResourceResponse::SignedCertificateTimestamp> isolatedCopy(const Vector<ResourceResponse::SignedCertificateTimestamp>& src)
|
| +template <typename Interface>
|
| +Vector<Interface> isolatedCopy(const Vector<Interface>& src)
|
| {
|
| - Vector<ResourceResponse::SignedCertificateTimestamp> result;
|
| + Vector<Interface> result;
|
| result.reserveCapacity(src.size());
|
| for (const auto& timestamp : src) {
|
| result.append(timestamp.isolatedCopy());
|
| @@ -169,7 +170,12 @@ ResourceResponse::ResourceResponse(CrossThreadResourceResponseData* data)
|
| m_securityDetails.cipher = data->m_securityDetails.cipher;
|
| m_securityDetails.keyExchange = data->m_securityDetails.keyExchange;
|
| m_securityDetails.mac = data->m_securityDetails.mac;
|
| - m_securityDetails.certID = data->m_securityDetails.certID;
|
| + m_securityDetails.subjectName = data->m_securityDetails.subjectName;
|
| + m_securityDetails.sanList = data->m_securityDetails.sanList;
|
| + m_securityDetails.issuer = data->m_securityDetails.issuer;
|
| + m_securityDetails.validFrom = data->m_securityDetails.validFrom;
|
| + m_securityDetails.validTo = data->m_securityDetails.validTo;
|
| + m_securityDetails.certificate = AtomicString(data->m_certificate);
|
| m_securityDetails.sctList = data->m_securityDetails.sctList;
|
| m_httpVersion = data->m_httpVersion;
|
| m_appCacheID = data->m_appCacheID;
|
| @@ -221,7 +227,12 @@ std::unique_ptr<CrossThreadResourceResponseData> ResourceResponse::copyData() co
|
| data->m_securityDetails.cipher = m_securityDetails.cipher.isolatedCopy();
|
| data->m_securityDetails.keyExchange = m_securityDetails.keyExchange.isolatedCopy();
|
| data->m_securityDetails.mac = m_securityDetails.mac.isolatedCopy();
|
| - data->m_securityDetails.certID = m_securityDetails.certID;
|
| + data->m_securityDetails.subjectName = m_securityDetails.subjectName.isolatedCopy();
|
| + data->m_securityDetails.sanList = isolatedCopy(m_securityDetails.sanList);
|
| + data->m_securityDetails.issuer = m_securityDetails.issuer.isolatedCopy();
|
| + data->m_securityDetails.validFrom = m_securityDetails.validFrom;
|
| + data->m_securityDetails.validTo = m_securityDetails.validTo;
|
| + data->m_certificate = m_securityDetails.certificate.getString().isolatedCopy();
|
| data->m_securityDetails.sctList = isolatedCopy(m_securityDetails.sctList);
|
| data->m_httpVersion = m_httpVersion;
|
| data->m_appCacheID = m_appCacheID;
|
| @@ -377,13 +388,18 @@ void ResourceResponse::updateHeaderParsedState(const AtomicString& name)
|
| m_haveParsedLastModifiedHeader = false;
|
| }
|
|
|
| -void ResourceResponse::setSecurityDetails(const String& protocol, const String& keyExchange, const String& cipher, const String& mac, int certId, const SignedCertificateTimestampList& sctList)
|
| +void ResourceResponse::setSecurityDetails(const String& protocol, const String& keyExchange, const String& cipher, const String& mac, const String& subjectName, const Vector<String>& sanList, const String& issuer, time_t validFrom, time_t validTo, const AtomicString& certificate, const SignedCertificateTimestampList& sctList)
|
| {
|
| m_securityDetails.protocol = protocol;
|
| m_securityDetails.keyExchange = keyExchange;
|
| m_securityDetails.cipher = cipher;
|
| m_securityDetails.mac = mac;
|
| - m_securityDetails.certID = certId;
|
| + m_securityDetails.subjectName = subjectName;
|
| + m_securityDetails.sanList = sanList;
|
| + m_securityDetails.issuer = issuer;
|
| + m_securityDetails.validFrom = validFrom;
|
| + m_securityDetails.validTo = validTo;
|
| + m_securityDetails.certificate = certificate;
|
| m_securityDetails.sctList = sctList;
|
| }
|
|
|
|
|