Index: chrome/browser/prefs/command_line_pref_store.cc |
diff --git a/chrome/browser/prefs/command_line_pref_store.cc b/chrome/browser/prefs/command_line_pref_store.cc |
index a475c45b39f1dca7c55b4d434772fa4cadaeca15..021be741cd0ee7747f9ff360971e68ae06790857 100644 |
--- a/chrome/browser/prefs/command_line_pref_store.cc |
+++ b/chrome/browser/prefs/command_line_pref_store.cc |
@@ -5,6 +5,7 @@ |
#include "chrome/browser/prefs/command_line_pref_store.h" |
#include "base/logging.h" |
+#include "base/string_split.h" |
#include "base/values.h" |
#include "chrome/browser/prefs/proxy_config_dictionary.h" |
#include "chrome/common/chrome_switches.h" |
@@ -48,6 +49,7 @@ CommandLinePrefStore::CommandLinePrefStore(const CommandLine* command_line) |
ApplySimpleSwitches(); |
ApplyProxyMode(); |
ValidateProxySwitches(); |
+ ApplySSLSwitches(); |
} |
CommandLinePrefStore::~CommandLinePrefStore() {} |
@@ -106,3 +108,18 @@ void CommandLinePrefStore::ApplyProxyMode() { |
bypass_list)); |
} |
} |
+ |
+void CommandLinePrefStore::ApplySSLSwitches() { |
+ if (command_line_->HasSwitch(switches::kCipherSuiteBlacklist)) { |
+ std::string cipher_suites = |
+ command_line_->GetSwitchValueASCII(switches::kCipherSuiteBlacklist); |
+ std::vector<std::string> cipher_strings; |
+ base::SplitString(cipher_suites, ',', &cipher_strings); |
+ base::ListValue* list_value = new base::ListValue(); |
+ for (std::vector<std::string>::const_iterator it = cipher_strings.begin(); |
+ it != cipher_strings.end(); ++it) { |
+ list_value->Append(base::Value::CreateStringValue(*it)); |
+ } |
+ SetValue(prefs::kCipherSuiteBlacklist, list_value); |
+ } |
+} |
battre
2011/07/20 11:16:30
Add a unit test to command_line_pref_store_unittes
|