diff options
author | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-23 14:59:59 +0000 |
---|---|---|
committer | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-23 14:59:59 +0000 |
commit | 20f570c7cf8cd224676d4ae0f1d84d21d284f67e (patch) | |
tree | e27e1ce3726a1ac6677998bf637acf0559230dae /chrome/browser/browser_main.cc | |
parent | bcb0213abec72573f26ba1fe6b7d7bf33dc0930f (diff) | |
download | chromium_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.cc | 6 |
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 |