// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "content/shell/browser/shell_network_delegate.h" #include "net/base/net_errors.h" #include "net/base/static_cookie_policy.h" #include "net/url_request/url_request.h" namespace content { namespace { bool g_accept_all_cookies = true; } ShellNetworkDelegate::ShellNetworkDelegate() { } ShellNetworkDelegate::~ShellNetworkDelegate() { } void ShellNetworkDelegate::SetAcceptAllCookies(bool accept) { g_accept_all_cookies = accept; } int ShellNetworkDelegate::OnBeforeURLRequest( net::URLRequest* request, const net::CompletionCallback& callback, GURL* new_url) { return net::OK; } int ShellNetworkDelegate::OnBeforeSendHeaders( net::URLRequest* request, const net::CompletionCallback& callback, net::HttpRequestHeaders* headers) { return net::OK; } void ShellNetworkDelegate::OnSendHeaders( net::URLRequest* request, const net::HttpRequestHeaders& headers) { } int ShellNetworkDelegate::OnHeadersReceived( net::URLRequest* request, const net::CompletionCallback& callback, const net::HttpResponseHeaders* original_response_headers, scoped_refptr* override_response_headers) { return net::OK; } void ShellNetworkDelegate::OnBeforeRedirect(net::URLRequest* request, const GURL& new_location) { } void ShellNetworkDelegate::OnResponseStarted(net::URLRequest* request) { } void ShellNetworkDelegate::OnRawBytesRead(const net::URLRequest& request, int bytes_read) { } void ShellNetworkDelegate::OnCompleted(net::URLRequest* request, bool started) { } void ShellNetworkDelegate::OnURLRequestDestroyed(net::URLRequest* request) { } void ShellNetworkDelegate::OnPACScriptError(int line_number, const string16& error) { } ShellNetworkDelegate::AuthRequiredResponse ShellNetworkDelegate::OnAuthRequired( net::URLRequest* request, const net::AuthChallengeInfo& auth_info, const AuthCallback& callback, net::AuthCredentials* credentials) { return AUTH_REQUIRED_RESPONSE_NO_ACTION; } bool ShellNetworkDelegate::OnCanGetCookies(const net::URLRequest& request, const net::CookieList& cookie_list) { net::StaticCookiePolicy::Type policy_type = g_accept_all_cookies ? net::StaticCookiePolicy::ALLOW_ALL_COOKIES : net::StaticCookiePolicy::BLOCK_SETTING_THIRD_PARTY_COOKIES; net::StaticCookiePolicy policy(policy_type); int rv = policy.CanGetCookies( request.url(), request.first_party_for_cookies()); return rv == net::OK; } bool ShellNetworkDelegate::OnCanSetCookie(const net::URLRequest& request, const std::string& cookie_line, net::CookieOptions* options) { net::StaticCookiePolicy::Type policy_type = g_accept_all_cookies ? net::StaticCookiePolicy::ALLOW_ALL_COOKIES : net::StaticCookiePolicy::BLOCK_SETTING_THIRD_PARTY_COOKIES; net::StaticCookiePolicy policy(policy_type); int rv = policy.CanSetCookie( request.url(), request.first_party_for_cookies()); return rv == net::OK; } bool ShellNetworkDelegate::OnCanAccessFile(const net::URLRequest& request, const base::FilePath& path) const { return true; } bool ShellNetworkDelegate::OnCanThrottleRequest( const net::URLRequest& request) const { return false; } int ShellNetworkDelegate::OnBeforeSocketStreamConnect( net::SocketStream* socket, const net::CompletionCallback& callback) { return net::OK; } void ShellNetworkDelegate::OnRequestWaitStateChange( const net::URLRequest& request, RequestWaitState waiting) { } } // namespace content