OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2008 Apple Inc. All rights reserved. |
3 * Copyright (C) 2009 Google Inc. All rights reserved. | 3 * Copyright (C) 2009 Google Inc. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 15 matching lines...) Expand all Loading... |
26 | 26 |
27 #include "platform/network/ResourceResponse.h" | 27 #include "platform/network/ResourceResponse.h" |
28 | 28 |
29 #include "wtf/CurrentTime.h" | 29 #include "wtf/CurrentTime.h" |
30 #include "wtf/PtrUtil.h" | 30 #include "wtf/PtrUtil.h" |
31 #include "wtf/StdLibExtras.h" | 31 #include "wtf/StdLibExtras.h" |
32 #include <memory> | 32 #include <memory> |
33 | 33 |
34 namespace blink { | 34 namespace blink { |
35 | 35 |
| 36 ResourceResponse::SignedCertificateTimestamp::SignedCertificateTimestamp( |
| 37 const blink::WebURLResponse::SignedCertificateTimestamp& sct) |
| 38 : m_status(sct.status) |
| 39 , m_origin(sct.origin) |
| 40 , m_logDescription(sct.logDescription) |
| 41 , m_logId(sct.logId) |
| 42 , m_timestamp(sct.timestamp) |
| 43 , m_hashAlgorithm(sct.hashAlgorithm) |
| 44 , m_signatureAlgorithm(sct.signatureAlgorithm) |
| 45 , m_signatureData(sct.signatureData) |
| 46 { |
| 47 } |
| 48 |
36 ResourceResponse::ResourceResponse() | 49 ResourceResponse::ResourceResponse() |
37 : m_expectedContentLength(0) | 50 : m_expectedContentLength(0) |
38 , m_httpStatusCode(0) | 51 , m_httpStatusCode(0) |
39 , m_lastModifiedDate(0) | 52 , m_lastModifiedDate(0) |
40 , m_wasCached(false) | 53 , m_wasCached(false) |
41 , m_connectionID(0) | 54 , m_connectionID(0) |
42 , m_connectionReused(false) | 55 , m_connectionReused(false) |
43 , m_isNull(true) | 56 , m_isNull(true) |
44 , m_haveParsedAgeHeader(false) | 57 , m_haveParsedAgeHeader(false) |
45 , m_haveParsedDateHeader(false) | 58 , m_haveParsedDateHeader(false) |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 m_hasMajorCertificateErrors = data->m_hasMajorCertificateErrors; | 133 m_hasMajorCertificateErrors = data->m_hasMajorCertificateErrors; |
121 m_securityStyle = data->m_securityStyle; | 134 m_securityStyle = data->m_securityStyle; |
122 m_securityDetails.protocol = data->m_securityDetails.protocol; | 135 m_securityDetails.protocol = data->m_securityDetails.protocol; |
123 m_securityDetails.cipher = data->m_securityDetails.cipher; | 136 m_securityDetails.cipher = data->m_securityDetails.cipher; |
124 m_securityDetails.keyExchange = data->m_securityDetails.keyExchange; | 137 m_securityDetails.keyExchange = data->m_securityDetails.keyExchange; |
125 m_securityDetails.mac = data->m_securityDetails.mac; | 138 m_securityDetails.mac = data->m_securityDetails.mac; |
126 m_securityDetails.certID = data->m_securityDetails.certID; | 139 m_securityDetails.certID = data->m_securityDetails.certID; |
127 m_securityDetails.numUnknownSCTs = data->m_securityDetails.numUnknownSCTs; | 140 m_securityDetails.numUnknownSCTs = data->m_securityDetails.numUnknownSCTs; |
128 m_securityDetails.numInvalidSCTs = data->m_securityDetails.numInvalidSCTs; | 141 m_securityDetails.numInvalidSCTs = data->m_securityDetails.numInvalidSCTs; |
129 m_securityDetails.numValidSCTs = data->m_securityDetails.numValidSCTs; | 142 m_securityDetails.numValidSCTs = data->m_securityDetails.numValidSCTs; |
| 143 m_securityDetails.sctList = data->m_securityDetails.sctList; |
130 m_httpVersion = data->m_httpVersion; | 144 m_httpVersion = data->m_httpVersion; |
131 m_appCacheID = data->m_appCacheID; | 145 m_appCacheID = data->m_appCacheID; |
132 m_appCacheManifestURL = data->m_appCacheManifestURL.copy(); | 146 m_appCacheManifestURL = data->m_appCacheManifestURL.copy(); |
133 m_multipartBoundary = data->m_multipartBoundary; | 147 m_multipartBoundary = data->m_multipartBoundary; |
134 m_wasFetchedViaSPDY = data->m_wasFetchedViaSPDY; | 148 m_wasFetchedViaSPDY = data->m_wasFetchedViaSPDY; |
135 m_wasNpnNegotiated = data->m_wasNpnNegotiated; | 149 m_wasNpnNegotiated = data->m_wasNpnNegotiated; |
136 m_wasAlternateProtocolAvailable = data->m_wasAlternateProtocolAvailable; | 150 m_wasAlternateProtocolAvailable = data->m_wasAlternateProtocolAvailable; |
137 m_wasFetchedViaProxy = data->m_wasFetchedViaProxy; | 151 m_wasFetchedViaProxy = data->m_wasFetchedViaProxy; |
138 m_wasFetchedViaServiceWorker = data->m_wasFetchedViaServiceWorker; | 152 m_wasFetchedViaServiceWorker = data->m_wasFetchedViaServiceWorker; |
139 m_wasFallbackRequiredByServiceWorker = data->m_wasFallbackRequiredByServiceW
orker; | 153 m_wasFallbackRequiredByServiceWorker = data->m_wasFallbackRequiredByServiceW
orker; |
(...skipping 28 matching lines...) Expand all Loading... |
168 data->m_hasMajorCertificateErrors = m_hasMajorCertificateErrors; | 182 data->m_hasMajorCertificateErrors = m_hasMajorCertificateErrors; |
169 data->m_securityStyle = m_securityStyle; | 183 data->m_securityStyle = m_securityStyle; |
170 data->m_securityDetails.protocol = m_securityDetails.protocol.isolatedCopy()
; | 184 data->m_securityDetails.protocol = m_securityDetails.protocol.isolatedCopy()
; |
171 data->m_securityDetails.cipher = m_securityDetails.cipher.isolatedCopy(); | 185 data->m_securityDetails.cipher = m_securityDetails.cipher.isolatedCopy(); |
172 data->m_securityDetails.keyExchange = m_securityDetails.keyExchange.isolated
Copy(); | 186 data->m_securityDetails.keyExchange = m_securityDetails.keyExchange.isolated
Copy(); |
173 data->m_securityDetails.mac = m_securityDetails.mac.isolatedCopy(); | 187 data->m_securityDetails.mac = m_securityDetails.mac.isolatedCopy(); |
174 data->m_securityDetails.certID = m_securityDetails.certID; | 188 data->m_securityDetails.certID = m_securityDetails.certID; |
175 data->m_securityDetails.numUnknownSCTs = m_securityDetails.numUnknownSCTs; | 189 data->m_securityDetails.numUnknownSCTs = m_securityDetails.numUnknownSCTs; |
176 data->m_securityDetails.numInvalidSCTs = m_securityDetails.numInvalidSCTs; | 190 data->m_securityDetails.numInvalidSCTs = m_securityDetails.numInvalidSCTs; |
177 data->m_securityDetails.numValidSCTs = m_securityDetails.numValidSCTs; | 191 data->m_securityDetails.numValidSCTs = m_securityDetails.numValidSCTs; |
| 192 data->m_securityDetails.sctList = m_securityDetails.sctList; |
178 data->m_httpVersion = m_httpVersion; | 193 data->m_httpVersion = m_httpVersion; |
179 data->m_appCacheID = m_appCacheID; | 194 data->m_appCacheID = m_appCacheID; |
180 data->m_appCacheManifestURL = m_appCacheManifestURL.copy(); | 195 data->m_appCacheManifestURL = m_appCacheManifestURL.copy(); |
181 data->m_multipartBoundary = m_multipartBoundary; | 196 data->m_multipartBoundary = m_multipartBoundary; |
182 data->m_wasFetchedViaSPDY = m_wasFetchedViaSPDY; | 197 data->m_wasFetchedViaSPDY = m_wasFetchedViaSPDY; |
183 data->m_wasNpnNegotiated = m_wasNpnNegotiated; | 198 data->m_wasNpnNegotiated = m_wasNpnNegotiated; |
184 data->m_wasAlternateProtocolAvailable = m_wasAlternateProtocolAvailable; | 199 data->m_wasAlternateProtocolAvailable = m_wasAlternateProtocolAvailable; |
185 data->m_wasFetchedViaProxy = m_wasFetchedViaProxy; | 200 data->m_wasFetchedViaProxy = m_wasFetchedViaProxy; |
186 data->m_wasFetchedViaServiceWorker = m_wasFetchedViaServiceWorker; | 201 data->m_wasFetchedViaServiceWorker = m_wasFetchedViaServiceWorker; |
187 data->m_wasFallbackRequiredByServiceWorker = m_wasFallbackRequiredByServiceW
orker; | 202 data->m_wasFallbackRequiredByServiceWorker = m_wasFallbackRequiredByServiceW
orker; |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
319 else if (equalIgnoringCase(name, cacheControlHeaderString()) || equalIgnorin
gCase(name, pragmaHeaderString())) | 334 else if (equalIgnoringCase(name, cacheControlHeaderString()) || equalIgnorin
gCase(name, pragmaHeaderString())) |
320 m_cacheControlHeader = CacheControlHeader(); | 335 m_cacheControlHeader = CacheControlHeader(); |
321 else if (equalIgnoringCase(name, dateHeader)) | 336 else if (equalIgnoringCase(name, dateHeader)) |
322 m_haveParsedDateHeader = false; | 337 m_haveParsedDateHeader = false; |
323 else if (equalIgnoringCase(name, expiresHeader)) | 338 else if (equalIgnoringCase(name, expiresHeader)) |
324 m_haveParsedExpiresHeader = false; | 339 m_haveParsedExpiresHeader = false; |
325 else if (equalIgnoringCase(name, lastModifiedHeader)) | 340 else if (equalIgnoringCase(name, lastModifiedHeader)) |
326 m_haveParsedLastModifiedHeader = false; | 341 m_haveParsedLastModifiedHeader = false; |
327 } | 342 } |
328 | 343 |
329 void ResourceResponse::setSecurityDetails(const String& protocol, const String&
keyExchange, const String& cipher, const String& mac, int certId, size_t numUnkn
ownScts, size_t numInvalidScts, size_t numValidScts) | 344 void ResourceResponse::setSecurityDetails(const String& protocol, const String&
keyExchange, const String& cipher, const String& mac, int certId, size_t numUnkn
ownScts, size_t numInvalidScts, size_t numValidScts, const SignedCertificateTime
stampList& sctList) |
330 { | 345 { |
331 m_securityDetails.protocol = protocol; | 346 m_securityDetails.protocol = protocol; |
332 m_securityDetails.keyExchange = keyExchange; | 347 m_securityDetails.keyExchange = keyExchange; |
333 m_securityDetails.cipher = cipher; | 348 m_securityDetails.cipher = cipher; |
334 m_securityDetails.mac = mac; | 349 m_securityDetails.mac = mac; |
335 m_securityDetails.certID = certId; | 350 m_securityDetails.certID = certId; |
336 m_securityDetails.numUnknownSCTs = numUnknownScts; | 351 m_securityDetails.numUnknownSCTs = numUnknownScts; |
337 m_securityDetails.numInvalidSCTs = numInvalidScts; | 352 m_securityDetails.numInvalidSCTs = numInvalidScts; |
338 m_securityDetails.numValidSCTs = numValidScts; | 353 m_securityDetails.numValidSCTs = numValidScts; |
| 354 m_securityDetails.sctList = sctList; |
339 } | 355 } |
340 | 356 |
341 void ResourceResponse::setHTTPHeaderField(const AtomicString& name, const Atomic
String& value) | 357 void ResourceResponse::setHTTPHeaderField(const AtomicString& name, const Atomic
String& value) |
342 { | 358 { |
343 updateHeaderParsedState(name); | 359 updateHeaderParsedState(name); |
344 | 360 |
345 m_httpHeaderFields.set(name, value); | 361 m_httpHeaderFields.set(name, value); |
346 } | 362 } |
347 | 363 |
348 void ResourceResponse::addHTTPHeaderField(const AtomicString& name, const Atomic
String& value) | 364 void ResourceResponse::addHTTPHeaderField(const AtomicString& name, const Atomic
String& value) |
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
571 if (a.httpHeaderFields() != b.httpHeaderFields()) | 587 if (a.httpHeaderFields() != b.httpHeaderFields()) |
572 return false; | 588 return false; |
573 if (a.resourceLoadTiming() && b.resourceLoadTiming() && *a.resourceLoadTimin
g() == *b.resourceLoadTiming()) | 589 if (a.resourceLoadTiming() && b.resourceLoadTiming() && *a.resourceLoadTimin
g() == *b.resourceLoadTiming()) |
574 return true; | 590 return true; |
575 if (a.resourceLoadTiming() != b.resourceLoadTiming()) | 591 if (a.resourceLoadTiming() != b.resourceLoadTiming()) |
576 return false; | 592 return false; |
577 return true; | 593 return true; |
578 } | 594 } |
579 | 595 |
580 } // namespace blink | 596 } // namespace blink |
OLD | NEW |