Index: chrome/browser/net/chrome_network_delegate.h |
diff --git a/chrome/browser/net/chrome_network_delegate.h b/chrome/browser/net/chrome_network_delegate.h |
index db076e92c3fe8665266220652e34d1b7ab8f17e6..889ea96f3a7a3f46b03d524db3e37e65aee0ace0 100644 |
--- a/chrome/browser/net/chrome_network_delegate.h |
+++ b/chrome/browser/net/chrome_network_delegate.h |
@@ -5,6 +5,8 @@ |
#ifndef CHROME_BROWSER_NET_CHROME_NETWORK_DELEGATE_H_ |
#define CHROME_BROWSER_NET_CHROME_NETWORK_DELEGATE_H_ |
+#include <string> |
+ |
#include "base/basictypes.h" |
#include "base/compiler_specific.h" |
#include "base/memory/ref_counted.h" |
@@ -31,6 +33,10 @@ namespace extensions { |
class EventRouterForwarder; |
} |
+namespace net { |
+class URLRequest; |
+} |
+ |
namespace policy { |
class URLBlacklistManager; |
} |
@@ -55,6 +61,7 @@ class ChromeNetworkDelegate : public net::NetworkDelegate { |
CookieSettings* cookie_settings, |
BooleanPrefMember* enable_referrers, |
BooleanPrefMember* enable_do_not_track, |
+ BooleanPrefMember* force_google_safe_search, |
chrome_browser_net::LoadTimeStats* load_time_stats); |
virtual ~ChromeNetworkDelegate(); |
@@ -65,9 +72,11 @@ class ChromeNetworkDelegate : public net::NetworkDelegate { |
// Binds the pref members to |pref_service| and moves them to the IO thread. |
// |enable_do_not_track| can be NULL. |
// This method should be called on the UI thread. |
- static void InitializePrefsOnUIThread(BooleanPrefMember* enable_referrers, |
- BooleanPrefMember* enable_do_not_track, |
- PrefService* pref_service); |
+ static void InitializePrefsOnUIThread( |
+ BooleanPrefMember* enable_referrers, |
+ BooleanPrefMember* enable_do_not_track, |
+ BooleanPrefMember* force_google_safe_search, |
+ PrefService* pref_service); |
// When called, all file:// URLs will now be accessible. If this is not |
// called, then some platforms restrict access to file:// paths. |
@@ -82,6 +91,12 @@ class ChromeNetworkDelegate : public net::NetworkDelegate { |
// responsible for deleting the returned value. |
Value* SessionNetworkStatsInfoToValue() const; |
+ // Examines |old_request| and if it is a request to Google Web Search |
+ // it enforces that the SafeSearch query parameters are set to active |
+ // Sets the query part of |new_url| with the new value of the parameters. |
+ static void ForceGoogleSafeSearch(net::URLRequest* old_request, |
+ GURL* new_url); |
+ |
private: |
friend class ChromeNetworkDelegateTest; |
@@ -141,6 +156,7 @@ class ChromeNetworkDelegate : public net::NetworkDelegate { |
// Weak, owned by our owner. |
BooleanPrefMember* enable_referrers_; |
BooleanPrefMember* enable_do_not_track_; |
+ BooleanPrefMember* force_google_safe_search_; |
// Weak, owned by our owner. |
const policy::URLBlacklistManager* url_blacklist_manager_; |