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

Side by Side Diff: chrome/browser/net/chrome_url_request_context.cc

Issue 2862041: Remove abonded privacy blacklist implementation. (Closed)
Patch Set: fix unit tests Created 10 years, 5 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 | « chrome/browser/net/chrome_url_request_context.h ('k') | chrome/browser/options_util.cc » ('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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #include "chrome/browser/net/chrome_url_request_context.h" 5 #include "chrome/browser/net/chrome_url_request_context.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/message_loop.h" 8 #include "base/message_loop.h"
9 #include "base/message_loop_proxy.h" 9 #include "base/message_loop_proxy.h"
10 #include "base/string_util.h" 10 #include "base/string_util.h"
11 #include "chrome/browser/browser_process.h" 11 #include "chrome/browser/browser_process.h"
12 #include "chrome/browser/chrome_thread.h" 12 #include "chrome/browser/chrome_thread.h"
13 #include "chrome/browser/extensions/extensions_service.h" 13 #include "chrome/browser/extensions/extensions_service.h"
14 #include "chrome/browser/extensions/user_script_master.h" 14 #include "chrome/browser/extensions/user_script_master.h"
15 #include "chrome/browser/io_thread.h" 15 #include "chrome/browser/io_thread.h"
16 #include "chrome/browser/net/chrome_cookie_notification_details.h" 16 #include "chrome/browser/net/chrome_cookie_notification_details.h"
17 #include "chrome/browser/net/chrome_net_log.h" 17 #include "chrome/browser/net/chrome_net_log.h"
18 #include "chrome/browser/net/sqlite_persistent_cookie_store.h" 18 #include "chrome/browser/net/sqlite_persistent_cookie_store.h"
19 #include "chrome/browser/net/predictor_api.h" 19 #include "chrome/browser/net/predictor_api.h"
20 #include "chrome/browser/privacy_blacklist/blacklist.h"
21 #include "chrome/browser/privacy_blacklist/blacklist_request_info.h"
22 #include "chrome/browser/profile.h" 20 #include "chrome/browser/profile.h"
23 #include "chrome/common/chrome_constants.h" 21 #include "chrome/common/chrome_constants.h"
24 #include "chrome/common/chrome_switches.h" 22 #include "chrome/common/chrome_switches.h"
25 #include "chrome/common/extensions/extension.h" 23 #include "chrome/common/extensions/extension.h"
26 #include "chrome/common/notification_service.h" 24 #include "chrome/common/notification_service.h"
27 #include "chrome/common/pref_names.h" 25 #include "chrome/common/pref_names.h"
28 #include "chrome/common/url_constants.h" 26 #include "chrome/common/url_constants.h"
29 #include "net/base/static_cookie_policy.h" 27 #include "net/base/static_cookie_policy.h"
30 #include "net/ftp/ftp_network_layer.h" 28 #include "net/ftp/ftp_network_layer.h"
31 #include "net/http/http_cache.h" 29 #include "net/http/http_cache.h"
(...skipping 775 matching lines...) Expand 10 before | Expand all | Expand 10 after
807 return std::find(api_permissions.begin(), 805 return std::find(api_permissions.begin(),
808 api_permissions.end(), 806 api_permissions.end(),
809 permission_name) != api_permissions.end(); 807 permission_name) != api_permissions.end();
810 } 808 }
811 809
812 const std::string& ChromeURLRequestContext::GetUserAgent( 810 const std::string& ChromeURLRequestContext::GetUserAgent(
813 const GURL& url) const { 811 const GURL& url) const {
814 return webkit_glue::GetUserAgent(url); 812 return webkit_glue::GetUserAgent(url);
815 } 813 }
816 814
817 bool ChromeURLRequestContext::InterceptRequestCookies(
818 const URLRequest* request, const std::string& cookies) const {
819 return InterceptCookie(request, cookies);
820 }
821
822 bool ChromeURLRequestContext::InterceptResponseCookie(
823 const URLRequest* request, const std::string& cookie) const {
824 return InterceptCookie(request, cookie);
825 }
826
827 bool ChromeURLRequestContext::InterceptCookie(
828 const URLRequest* request, const std::string& cookie) const {
829 BlacklistRequestInfo* request_info =
830 BlacklistRequestInfo::FromURLRequest(request);
831 // Requests which don't go through ResourceDispatcherHost don't have privacy
832 // blacklist request data.
833 if (!request_info)
834 return true;
835 const Blacklist* blacklist = request_info->GetBlacklist();
836 // TODO(phajdan.jr): remove the NULL check when blacklists are stable.
837 if (!blacklist)
838 return true;
839 scoped_ptr<Blacklist::Match> match(blacklist->FindMatch(request->url()));
840 if (match.get() && (match->attributes() & Blacklist::kBlockCookies)) {
841 NotificationService::current()->Notify(
842 NotificationType::BLACKLIST_NONVISUAL_RESOURCE_BLOCKED,
843 Source<const ChromeURLRequestContext>(this),
844 Details<const URLRequest>(request));
845 return false;
846 }
847
848 return true;
849 }
850
851 const Blacklist* ChromeURLRequestContext::GetPrivacyBlacklist() const {
852 return privacy_blacklist_.get();
853 }
854
855 void ChromeURLRequestContext::OnNewExtensions(const std::string& id, 815 void ChromeURLRequestContext::OnNewExtensions(const std::string& id,
856 ExtensionInfo* info) { 816 ExtensionInfo* info) {
857 if (!is_off_the_record_) 817 if (!is_off_the_record_)
858 extension_info_[id] = linked_ptr<ExtensionInfo>(info); 818 extension_info_[id] = linked_ptr<ExtensionInfo>(info);
859 } 819 }
860 820
861 void ChromeURLRequestContext::OnUnloadedExtension(const std::string& id) { 821 void ChromeURLRequestContext::OnUnloadedExtension(const std::string& id) {
862 CheckCurrentlyOnIOThread(); 822 CheckCurrentlyOnIOThread();
863 if (is_off_the_record_) 823 if (is_off_the_record_)
864 return; 824 return;
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
900 http_auth_handler_factory_ = other->http_auth_handler_factory_; 860 http_auth_handler_factory_ = other->http_auth_handler_factory_;
901 861
902 // Set ChromeURLRequestContext members 862 // Set ChromeURLRequestContext members
903 extension_info_ = other->extension_info_; 863 extension_info_ = other->extension_info_;
904 user_script_dir_path_ = other->user_script_dir_path_; 864 user_script_dir_path_ = other->user_script_dir_path_;
905 appcache_service_ = other->appcache_service_; 865 appcache_service_ = other->appcache_service_;
906 database_tracker_ = other->database_tracker_; 866 database_tracker_ = other->database_tracker_;
907 chrome_cookie_policy_ = other->chrome_cookie_policy_; 867 chrome_cookie_policy_ = other->chrome_cookie_policy_;
908 host_content_settings_map_ = other->host_content_settings_map_; 868 host_content_settings_map_ = other->host_content_settings_map_;
909 host_zoom_map_ = other->host_zoom_map_; 869 host_zoom_map_ = other->host_zoom_map_;
910 privacy_blacklist_ = other->privacy_blacklist_;
911 is_media_ = other->is_media_; 870 is_media_ = other->is_media_;
912 is_off_the_record_ = other->is_off_the_record_; 871 is_off_the_record_ = other->is_off_the_record_;
913 } 872 }
914 873
915 void ChromeURLRequestContext::OnAcceptLanguageChange( 874 void ChromeURLRequestContext::OnAcceptLanguageChange(
916 const std::string& accept_language) { 875 const std::string& accept_language) {
917 CheckCurrentlyOnIOThread(); 876 CheckCurrentlyOnIOThread();
918 accept_language_ = 877 accept_language_ =
919 net::HttpUtil::GenerateAcceptLanguageHeader(accept_language); 878 net::HttpUtil::GenerateAcceptLanguageHeader(accept_language);
920 } 879 }
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
958 // types a URL in the omnibar or click on a download link in a page. 917 // types a URL in the omnibar or click on a download link in a page.
959 // For the latter, we need a change on the webkit-side. 918 // For the latter, we need a change on the webkit-side.
960 // We initialize it to the default charset here and a user will 919 // We initialize it to the default charset here and a user will
961 // have an *arguably* better default charset for interpreting a raw 8bit 920 // have an *arguably* better default charset for interpreting a raw 8bit
962 // C-D header field. It means the native OS codepage fallback in 921 // C-D header field. It means the native OS codepage fallback in
963 // net_util::GetSuggestedFilename is unlikely to be taken. 922 // net_util::GetSuggestedFilename is unlikely to be taken.
964 referrer_charset_ = default_charset; 923 referrer_charset_ = default_charset;
965 924
966 host_content_settings_map_ = profile->GetHostContentSettingsMap(); 925 host_content_settings_map_ = profile->GetHostContentSettingsMap();
967 host_zoom_map_ = profile->GetHostZoomMap(); 926 host_zoom_map_ = profile->GetHostZoomMap();
968 privacy_blacklist_ = profile->GetPrivacyBlacklist();
969 transport_security_state_ = profile->GetTransportSecurityState(); 927 transport_security_state_ = profile->GetTransportSecurityState();
970 928
971 if (profile->GetExtensionsService()) { 929 if (profile->GetExtensionsService()) {
972 const ExtensionList* extensions = 930 const ExtensionList* extensions =
973 profile->GetExtensionsService()->extensions(); 931 profile->GetExtensionsService()->extensions();
974 for (ExtensionList::const_iterator iter = extensions->begin(); 932 for (ExtensionList::const_iterator iter = extensions->begin();
975 iter != extensions->end(); ++iter) { 933 iter != extensions->end(); ++iter) {
976 extension_info_[(*iter)->id()] = 934 extension_info_[(*iter)->id()] =
977 linked_ptr<ChromeURLRequestContext::ExtensionInfo>( 935 linked_ptr<ChromeURLRequestContext::ExtensionInfo>(
978 new ChromeURLRequestContext::ExtensionInfo( 936 new ChromeURLRequestContext::ExtensionInfo(
(...skipping 27 matching lines...) Expand all
1006 // ChromeURLRequestContextFactory(Profile*). 964 // ChromeURLRequestContextFactory(Profile*).
1007 context->set_is_media(is_media_); 965 context->set_is_media(is_media_);
1008 context->set_is_off_the_record(is_off_the_record_); 966 context->set_is_off_the_record(is_off_the_record_);
1009 context->set_accept_language(accept_language_); 967 context->set_accept_language(accept_language_);
1010 context->set_accept_charset(accept_charset_); 968 context->set_accept_charset(accept_charset_);
1011 context->set_referrer_charset(referrer_charset_); 969 context->set_referrer_charset(referrer_charset_);
1012 context->set_extension_info(extension_info_); 970 context->set_extension_info(extension_info_);
1013 context->set_user_script_dir_path(user_script_dir_path_); 971 context->set_user_script_dir_path(user_script_dir_path_);
1014 context->set_host_content_settings_map(host_content_settings_map_); 972 context->set_host_content_settings_map(host_content_settings_map_);
1015 context->set_host_zoom_map(host_zoom_map_); 973 context->set_host_zoom_map(host_zoom_map_);
1016 context->set_privacy_blacklist(privacy_blacklist_);
1017 context->set_transport_security_state( 974 context->set_transport_security_state(
1018 transport_security_state_); 975 transport_security_state_);
1019 context->set_ssl_config_service(ssl_config_service_); 976 context->set_ssl_config_service(ssl_config_service_);
1020 context->set_database_tracker(database_tracker_); 977 context->set_database_tracker(database_tracker_);
1021 } 978 }
1022 979
1023 // ---------------------------------------------------------------------------- 980 // ----------------------------------------------------------------------------
1024 981
1025 net::ProxyConfig* CreateProxyConfig(const PrefService* pref_service) { 982 net::ProxyConfig* CreateProxyConfig(const PrefService* pref_service) {
1026 // Scan for all "enable" type proxy switches. 983 // Scan for all "enable" type proxy switches.
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
1065 prefs::kProxyAutoDetect)); 1022 prefs::kProxyAutoDetect));
1066 1023
1067 if (pref_service->HasPrefPath(prefs::kProxyBypassList)) { 1024 if (pref_service->HasPrefPath(prefs::kProxyBypassList)) {
1068 std::string proxy_bypass = 1025 std::string proxy_bypass =
1069 pref_service->GetString(prefs::kProxyBypassList); 1026 pref_service->GetString(prefs::kProxyBypassList);
1070 proxy_config->proxy_rules().bypass_rules.ParseFromString(proxy_bypass); 1027 proxy_config->proxy_rules().bypass_rules.ParseFromString(proxy_bypass);
1071 } 1028 }
1072 1029
1073 return proxy_config; 1030 return proxy_config;
1074 } 1031 }
OLDNEW
« no previous file with comments | « chrome/browser/net/chrome_url_request_context.h ('k') | chrome/browser/options_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698