diff options
| author | Ben Murdoch <benm@google.com> | 2010-11-18 18:32:45 +0000 |
|---|---|---|
| committer | Ben Murdoch <benm@google.com> | 2010-11-18 18:38:07 +0000 |
| commit | 513209b27ff55e2841eac0e4120199c23acce758 (patch) | |
| tree | aeba30bb08c5f47c57003544e378a377c297eee6 /chrome/browser/renderer_host/resource_dispatcher_host.cc | |
| parent | 164f7496de0fbee436b385a79ead9e3cb81a50c1 (diff) | |
| download | external_chromium-513209b27ff55e2841eac0e4120199c23acce758.zip external_chromium-513209b27ff55e2841eac0e4120199c23acce758.tar.gz external_chromium-513209b27ff55e2841eac0e4120199c23acce758.tar.bz2 | |
Merge Chromium at r65505: Initial merge by git.
Change-Id: I31d8f1d8cd33caaf7f47ffa7350aef42d5fbdb45
Diffstat (limited to 'chrome/browser/renderer_host/resource_dispatcher_host.cc')
| -rw-r--r-- | chrome/browser/renderer_host/resource_dispatcher_host.cc | 75 |
1 files changed, 34 insertions, 41 deletions
diff --git a/chrome/browser/renderer_host/resource_dispatcher_host.cc b/chrome/browser/renderer_host/resource_dispatcher_host.cc index a17b12b..6fd669e 100644 --- a/chrome/browser/renderer_host/resource_dispatcher_host.cc +++ b/chrome/browser/renderer_host/resource_dispatcher_host.cc @@ -78,15 +78,6 @@ #include "chrome/browser/renderer_host/offline_resource_handler.h" #endif -// Uncomment to enable logging of request traffic. -// #define LOG_RESOURCE_DISPATCHER_REQUESTS - -#ifdef LOG_RESOURCE_DISPATCHER_REQUESTS -# define RESOURCE_LOG(stuff) LOG(INFO) << stuff -#else -# define RESOURCE_LOG(stuff) -#endif - using base::Time; using base::TimeDelta; using base::TimeTicks; @@ -143,8 +134,8 @@ bool ShouldServiceRequest(ChildProcessInfo::ProcessType process_type, // Check if the renderer is permitted to request the requested URL. if (!policy->CanRequestURL(child_id, request_data.url)) { - LOG(INFO) << "Denied unauthorized request for " << - request_data.url.possibly_invalid_spec(); + VLOG(1) << "Denied unauthorized request for " + << request_data.url.possibly_invalid_spec(); return false; } @@ -449,11 +440,13 @@ void ResourceDispatcherHost::BeginRequest( request->SetExtraRequestHeaders(headers); int load_flags = request_data.load_flags; - // EV certificate verification could be expensive. We don't want to spend - // time performing EV certificate verification on all resources because - // EV status is irrelevant to sub-frames and sub-resources. + // Although EV status is irrelevant to sub-frames and sub-resources, we have + // to perform EV certificate verification on all resources because an HTTP + // keep-alive connection created to load a sub-frame or a sub-resource could + // be reused to load a main frame. + load_flags |= net::LOAD_VERIFY_EV_CERT; if (request_data.resource_type == ResourceType::MAIN_FRAME) { - load_flags |= net::LOAD_VERIFY_EV_CERT | net::LOAD_MAIN_FRAME; + load_flags |= net::LOAD_MAIN_FRAME; } else if (request_data.resource_type == ResourceType::SUB_FRAME) { load_flags |= net::LOAD_SUB_FRAME; } @@ -462,7 +455,7 @@ void ResourceDispatcherHost::BeginRequest( if ((load_flags & net::LOAD_REPORT_RAW_HEADERS) && !ChildProcessSecurityPolicy::GetInstance()-> CanReadRawCookies(child_id)) { - LOG(INFO) << "Denied unathorized request for raw headers"; + VLOG(1) << "Denied unathorized request for raw headers"; load_flags &= ~net::LOAD_REPORT_RAW_HEADERS; } @@ -704,8 +697,8 @@ void ResourceDispatcherHost::BeginDownload( // Check if the renderer is permitted to request the requested URL. if (!ChildProcessSecurityPolicy::GetInstance()-> CanRequestURL(child_id, url)) { - LOG(INFO) << "Denied unauthorized download request for " << - url.possibly_invalid_spec(); + VLOG(1) << "Denied unauthorized download request for " + << url.possibly_invalid_spec(); return; } @@ -716,7 +709,7 @@ void ResourceDispatcherHost::BeginDownload( request_id_--; - scoped_refptr<ResourceHandler> handler = + scoped_refptr<ResourceHandler> handler( new DownloadResourceHandler(this, child_id, route_id, @@ -725,7 +718,7 @@ void ResourceDispatcherHost::BeginDownload( download_file_manager_.get(), request, prompt_for_save_location, - save_info); + save_info)); if (safe_browsing_->enabled()) { handler = CreateSafeBrowsingResourceHandler(handler, child_id, route_id, @@ -733,8 +726,8 @@ void ResourceDispatcherHost::BeginDownload( } if (!URLRequest::IsHandledURL(url)) { - LOG(INFO) << "Download request for unsupported protocol: " << - url.possibly_invalid_spec(); + VLOG(1) << "Download request for unsupported protocol: " + << url.possibly_invalid_spec(); return; } @@ -766,11 +759,11 @@ void ResourceDispatcherHost::BeginSaveFile(const GURL& url, // requests. Does nothing if they are already loaded. PluginService::GetInstance()->LoadChromePlugins(this); - scoped_refptr<ResourceHandler> handler = + scoped_refptr<ResourceHandler> handler( new SaveFileResourceHandler(child_id, route_id, url, - save_file_manager_.get()); + save_file_manager_.get())); request_id_--; bool known_proto = URLRequest::IsHandledURL(url); @@ -876,7 +869,7 @@ void ResourceDispatcherHost::PauseRequest(int child_id, } info->set_pause_count(pause_count); - RESOURCE_LOG("To pause (" << pause << "): " << i->second->url().spec()); + VLOG(1) << "To pause (" << pause << "): " << i->second->url().spec(); // If we're resuming, kick the request to start reading again. Run the read // asynchronously to avoid recursion problems. @@ -1006,7 +999,7 @@ void ResourceDispatcherHost::RemovePendingRequest( void ResourceDispatcherHost::OnReceivedRedirect(URLRequest* request, const GURL& new_url, bool* defer_redirect) { - RESOURCE_LOG("OnReceivedRedirect: " << request->url().spec()); + VLOG(1) << "OnReceivedRedirect: " << request->url().spec(); ResourceDispatcherHostRequestInfo* info = InfoForRequest(request); DCHECK(request->status().is_success()); @@ -1014,8 +1007,8 @@ void ResourceDispatcherHost::OnReceivedRedirect(URLRequest* request, if (info->process_type() != ChildProcessInfo::PLUGIN_PROCESS && !ChildProcessSecurityPolicy::GetInstance()-> CanRequestURL(info->child_id(), new_url)) { - LOG(INFO) << "Denied unauthorized request for " << - new_url.possibly_invalid_spec(); + VLOG(1) << "Denied unauthorized request for " + << new_url.possibly_invalid_spec(); // Tell the renderer that this request was disallowed. CancelRequestInternal(request, false); @@ -1032,7 +1025,7 @@ void ResourceDispatcherHost::OnReceivedRedirect(URLRequest* request, return; } - scoped_refptr<ResourceResponse> response = new ResourceResponse; + scoped_refptr<ResourceResponse> response(new ResourceResponse); PopulateResourceResponse(request, info->replace_extension_localization_templates(), response); if (!info->resource_handler()->OnRequestRedirected(info->request_id(), @@ -1086,7 +1079,7 @@ void ResourceDispatcherHost::OnSSLCertificateError( void ResourceDispatcherHost::OnSetCookie(URLRequest* request, const std::string& cookie_line, bool blocked_by_policy) { - RESOURCE_LOG("OnSetCookie: " << request->url().spec()); + VLOG(1) << "OnSetCookie: " << request->url().spec(); int render_process_id, render_view_id; if (!RenderViewForRequest(request, &render_process_id, &render_view_id)) @@ -1099,10 +1092,10 @@ void ResourceDispatcherHost::OnSetCookie(URLRequest* request, } void ResourceDispatcherHost::OnResponseStarted(URLRequest* request) { - RESOURCE_LOG("OnResponseStarted: " << request->url().spec()); + VLOG(1) << "OnResponseStarted: " << request->url().spec(); ResourceDispatcherHostRequestInfo* info = InfoForRequest(request); if (PauseRequestIfNeeded(info)) { - RESOURCE_LOG("OnResponseStarted pausing: " << request->url().spec()); + VLOG(1) << "OnResponseStarted pausing: " << request->url().spec(); return; } @@ -1118,7 +1111,7 @@ void ResourceDispatcherHost::OnResponseStarted(URLRequest* request) { } else { // Check if the handler paused the request in their OnResponseStarted. if (PauseRequestIfNeeded(info)) { - RESOURCE_LOG("OnResponseStarted pausing2: " << request->url().spec()); + VLOG(1) << "OnResponseStarted pausing2: " << request->url().spec(); return; } @@ -1132,7 +1125,7 @@ void ResourceDispatcherHost::OnResponseStarted(URLRequest* request) { bool ResourceDispatcherHost::CompleteResponseStarted(URLRequest* request) { ResourceDispatcherHostRequestInfo* info = InfoForRequest(request); - scoped_refptr<ResourceResponse> response = new ResourceResponse; + scoped_refptr<ResourceResponse> response(new ResourceResponse); PopulateResourceResponse(request, info->replace_extension_localization_templates(), response); @@ -1176,7 +1169,7 @@ void ResourceDispatcherHost::CancelRequest(int child_id, void ResourceDispatcherHost::CancelRequestInternal(URLRequest* request, bool from_renderer) { - RESOURCE_LOG("CancelRequest: " << request->url().spec()); + VLOG(1) << "CancelRequest: " << request->url().spec(); // WebKit will send us a cancel for downloads since it no longer handles them. // In this case, ignore the cancel since we handle downloads in the browser. @@ -1347,7 +1340,7 @@ void ResourceDispatcherHost::ResumeRequest(const GlobalRequestID& request_id) { if (!info->is_paused()) return; - RESOURCE_LOG("Resuming: " << i->second->url().spec()); + VLOG(1) << "Resuming: " << i->second->url().spec(); info->set_is_paused(false); @@ -1395,7 +1388,7 @@ bool ResourceDispatcherHost::Read(URLRequest* request, int* bytes_read) { void ResourceDispatcherHost::OnReadCompleted(URLRequest* request, int bytes_read) { DCHECK(request); - RESOURCE_LOG("OnReadCompleted: " << request->url().spec()); + VLOG(1) << "OnReadCompleted: " << request->url().spec(); ResourceDispatcherHostRequestInfo* info = InfoForRequest(request); // OnReadCompleted can be called without Read (e.g., for chrome:// URLs). @@ -1404,7 +1397,7 @@ void ResourceDispatcherHost::OnReadCompleted(URLRequest* request, if (PauseRequestIfNeeded(info)) { info->set_paused_read_bytes(bytes_read); - RESOURCE_LOG("OnReadCompleted pausing: " << request->url().spec()); + VLOG(1) << "OnReadCompleted pausing: " << request->url().spec(); return; } @@ -1434,8 +1427,8 @@ void ResourceDispatcherHost::OnReadCompleted(URLRequest* request, if (PauseRequestIfNeeded(info)) { info->set_paused_read_bytes(bytes_read); - RESOURCE_LOG("OnReadCompleted (CompleteRead) pausing: " << - request->url().spec()); + VLOG(1) << "OnReadCompleted (CompleteRead) pausing: " + << request->url().spec(); return; } @@ -1463,7 +1456,7 @@ bool ResourceDispatcherHost::CompleteRead(URLRequest* request, } void ResourceDispatcherHost::OnResponseCompleted(URLRequest* request) { - RESOURCE_LOG("OnResponseCompleted: " << request->url().spec()); + VLOG(1) << "OnResponseCompleted: " << request->url().spec(); ResourceDispatcherHostRequestInfo* info = InfoForRequest(request); // If the load for a main frame has failed, track it in a histogram, |
