summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_main.cc
diff options
context:
space:
mode:
authoragl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-11-23 14:59:59 +0000
committeragl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-11-23 14:59:59 +0000
commit20f570c7cf8cd224676d4ae0f1d84d21d284f67e (patch)
treee27e1ce3726a1ac6677998bf637acf0559230dae /chrome/browser/browser_main.cc
parentbcb0213abec72573f26ba1fe6b7d7bf33dc0930f (diff)
downloadchromium_src-20f570c7cf8cd224676d4ae0f1d84d21d284f67e.zip
chromium_src-20f570c7cf8cd224676d4ae0f1d84d21d284f67e.tar.gz
chromium_src-20f570c7cf8cd224676d4ae0f1d84d21d284f67e.tar.bz2
Hide ChromeDnsCertProvenanceChecker behind a factory.
Directly calling NSS code from a .cc file which is linked into both Chrome and Chrome Frame causes a bad reference to libnspr.dll to be emitted on Windows. wtc informs me that the `solution' to this is to break the code up so that there's no direct chain from common code to NSS code. This change puts ChromeDnsCertProvenanceChecker into its own file and adds a factory for it. The factory is modeled after the SSLClientSocket factory in net/socket (which was added for the some of the same reasons). BUG=none TEST=compiles on Chrome Frame builders. http://codereview.chromium.org/5260001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67098 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browser_main.cc')
-rw-r--r--chrome/browser/browser_main.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/chrome/browser/browser_main.cc b/chrome/browser/browser_main.cc
index e7afaff..b729ec2 100644
--- a/chrome/browser/browser_main.cc
+++ b/chrome/browser/browser_main.cc
@@ -50,8 +50,10 @@
#include "chrome/browser/metrics/metrics_log.h"
#include "chrome/browser/metrics/metrics_service.h"
#include "chrome/browser/net/blob_url_request_job_factory.h"
-#include "chrome/browser/net/predictor_api.h"
+#include "chrome/browser/net/chrome_dns_cert_provenance_checker.h"
+#include "chrome/browser/net/chrome_dns_cert_provenance_checker_factory.h"
#include "chrome/browser/net/metadata_url_request.h"
+#include "chrome/browser/net/predictor_api.h"
#include "chrome/browser/net/sdch_dictionary_fetcher.h"
#include "chrome/browser/net/websocket_experiment/websocket_experiment_runner.h"
#include "chrome/browser/plugin_service.h"
@@ -561,6 +563,8 @@ void InitializeNetworkOptions(const CommandLine& parsed_command_line) {
&value);
net::SpdySessionPool::set_max_sessions_per_domain(value);
}
+
+ SetDnsCertProvenanceCheckerFactory(CreateChromeDnsCertProvenanceChecker);
}
// Creates key child threads. We need to do this explicitly since