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

Side by Side Diff: content/browser/loader/resource_dispatcher_host_impl.cc

Issue 329723006: Determine prevalence of cache-control: no-store in main frame resources. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 6 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 | « no previous file | tools/metrics/histograms/histograms.xml » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 // See http://dev.chromium.org/developers/design-documents/multi-process-resourc e-loading 5 // See http://dev.chromium.org/developers/design-documents/multi-process-resourc e-loading
6 6
7 #include "content/browser/loader/resource_dispatcher_host_impl.h" 7 #include "content/browser/loader/resource_dispatcher_host_impl.h"
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <set> 10 #include <set>
(...skipping 299 matching lines...) Expand 10 before | Expand all | Expand 10 after
310 return sct_status.status == net::ct::SCT_STATUS_OK; 310 return sct_status.status == net::ct::SCT_STATUS_OK;
311 } 311 }
312 312
313 webkit_blob::BlobStorageContext* GetBlobStorageContext( 313 webkit_blob::BlobStorageContext* GetBlobStorageContext(
314 ResourceMessageFilter* filter) { 314 ResourceMessageFilter* filter) {
315 if (!filter->blob_storage_context()) 315 if (!filter->blob_storage_context())
316 return NULL; 316 return NULL;
317 return filter->blob_storage_context()->context(); 317 return filter->blob_storage_context()->context();
318 } 318 }
319 319
320 enum CacheStorable {
321 // A "cache-control: no-store" header was found.
322 CACHE_STORABLE_NO_STORE,
323 // No "no-store" header was found.
324 CACHE_STORABLE_STORE,
325 CACHE_STORABLE_MAX
326 };
327
320 } // namespace 328 } // namespace
321 329
322 // static 330 // static
323 ResourceDispatcherHost* ResourceDispatcherHost::Get() { 331 ResourceDispatcherHost* ResourceDispatcherHost::Get() {
324 return g_resource_dispatcher_host; 332 return g_resource_dispatcher_host;
325 } 333 }
326 334
327 ResourceDispatcherHostImpl::ResourceDispatcherHostImpl() 335 ResourceDispatcherHostImpl::ResourceDispatcherHostImpl()
328 : save_file_manager_(new SaveFileManager()), 336 : save_file_manager_(new SaveFileManager()),
329 request_id_(-1), 337 request_id_(-1),
(...skipping 432 matching lines...) Expand 10 before | Expand all | Expand 10 after
762 -loader->request()->status().error()); 770 -loader->request()->status().error());
763 } 771 }
764 772
765 int num_valid_scts = std::count_if( 773 int num_valid_scts = std::count_if(
766 loader->request()->ssl_info().signed_certificate_timestamps.begin(), 774 loader->request()->ssl_info().signed_certificate_timestamps.begin(),
767 loader->request()->ssl_info().signed_certificate_timestamps.end(), 775 loader->request()->ssl_info().signed_certificate_timestamps.end(),
768 IsValidatedSCT); 776 IsValidatedSCT);
769 UMA_HISTOGRAM_COUNTS_100( 777 UMA_HISTOGRAM_COUNTS_100(
770 "Net.CertificateTransparency.MainFrameValidSCTCount", num_valid_scts); 778 "Net.CertificateTransparency.MainFrameValidSCTCount", num_valid_scts);
771 } 779 }
780
781 net::HttpResponseHeaders* response_headers =
782 loader->request()->response_headers();
783 if (response_headers) {
784 CacheStorable storable =
785 response_headers->HasHeaderValue("cache-control", "no-store")
786 ? CACHE_STORABLE_NO_STORE
787 : CACHE_STORABLE_STORE;
davidben 2014/06/11 16:28:01 This could also just be a boolean with UMA_HISTOGR
jkarlin 2014/06/11 16:50:06 True, that's simpler. Went with BOOLEAN.
788 UMA_HISTOGRAM_ENUMERATION(
789 "Net.MainFrameStorable", storable, CACHE_STORABLE_MAX);
790 }
772 } else { 791 } else {
773 if (info->GetResourceType() == ResourceType::IMAGE) { 792 if (info->GetResourceType() == ResourceType::IMAGE) {
774 UMA_HISTOGRAM_SPARSE_SLOWLY( 793 UMA_HISTOGRAM_SPARSE_SLOWLY(
775 "Net.ErrorCodesForImages", 794 "Net.ErrorCodesForImages",
776 -loader->request()->status().error()); 795 -loader->request()->status().error());
777 } 796 }
778 // This enumeration has "2" appended to distinguish it from older versions. 797 // This enumeration has "2" appended to distinguish it from older versions.
779 UMA_HISTOGRAM_SPARSE_SLOWLY( 798 UMA_HISTOGRAM_SPARSE_SLOWLY(
780 "Net.ErrorCodesForSubresources2", 799 "Net.ErrorCodesForSubresources2",
781 -loader->request()->status().error()); 800 -loader->request()->status().error());
(...skipping 1196 matching lines...) Expand 10 before | Expand all | Expand 10 after
1978 if ((load_flags & net::LOAD_REPORT_RAW_HEADERS) 1997 if ((load_flags & net::LOAD_REPORT_RAW_HEADERS)
1979 && !policy->CanReadRawCookies(child_id)) { 1998 && !policy->CanReadRawCookies(child_id)) {
1980 VLOG(1) << "Denied unauthorized request for raw headers"; 1999 VLOG(1) << "Denied unauthorized request for raw headers";
1981 load_flags &= ~net::LOAD_REPORT_RAW_HEADERS; 2000 load_flags &= ~net::LOAD_REPORT_RAW_HEADERS;
1982 } 2001 }
1983 2002
1984 return load_flags; 2003 return load_flags;
1985 } 2004 }
1986 2005
1987 } // namespace content 2006 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | tools/metrics/histograms/histograms.xml » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698