summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_process_impl.cc
diff options
context:
space:
mode:
authorpastarmovj@chromium.org <pastarmovj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-08 12:17:18 +0000
committerpastarmovj@chromium.org <pastarmovj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-08 12:17:18 +0000
commit2c094d8030adf129b35076b75399f920dc082792 (patch)
tree218c2caf61e12d996b5a609f436ae18717521a05 /chrome/browser/browser_process_impl.cc
parent94071506bbaae97bf587e70eb11d76028af14a95 (diff)
downloadchromium_src-2c094d8030adf129b35076b75399f920dc082792.zip
chromium_src-2c094d8030adf129b35076b75399f920dc082792.tar.gz
chromium_src-2c094d8030adf129b35076b75399f920dc082792.tar.bz2
Introduce a policy to control the maximal number of connections per proxy server.
BUG=63658 TEST=All policy unit_tests should pass. Review URL: http://codereview.chromium.org/7283018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91842 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browser_process_impl.cc')
-rw-r--r--chrome/browser/browser_process_impl.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
index f99f38b..b616348 100644
--- a/chrome/browser/browser_process_impl.cc
+++ b/chrome/browser/browser_process_impl.cc
@@ -77,6 +77,7 @@
#include "content/browser/renderer_host/resource_dispatcher_host.h"
#include "content/common/notification_service.h"
#include "ipc/ipc_logging.h"
+#include "net/socket/client_socket_pool_manager.h"
#include "net/url_request/url_request_context_getter.h"
#include "ui/base/clipboard/clipboard.h"
#include "ui/base/l10n/l10n_util.h"
@@ -849,6 +850,15 @@ void BrowserProcessImpl::CreateLocalState() {
// able so we need to have it when initializing the profiles.
local_state_->RegisterFilePathPref(prefs::kDiskCacheDir, FilePath());
+ // Another policy that needs to be defined before the net subsystem is
+ // initialized is MaxConnectionsPerProxy so we do it here.
+ local_state_->RegisterIntegerPref(prefs::kMaxConnectionsPerProxy,
+ net::kDefaultMaxSocketsPerProxyServer);
+ int max_per_proxy = local_state_->GetInteger(prefs::kMaxConnectionsPerProxy);
+ net::ClientSocketPoolManager::set_max_sockets_per_proxy_server(
+ std::max(std::min(max_per_proxy, 99),
+ net::ClientSocketPoolManager::max_sockets_per_group()));
+
// This is observed by ChildProcessSecurityPolicy, which lives in content/
// though, so it can't register itself.
local_state_->RegisterListPref(prefs::kDisabledSchemes);