Index: chromeos/network/onc/onc_translator_onc_to_shill.cc |
diff --git a/chromeos/network/onc/onc_translator_onc_to_shill.cc b/chromeos/network/onc/onc_translator_onc_to_shill.cc |
index 70831c4d8ae4738d52c44a1dc740dc4f1c323bb2..fbca558636122630eb307b33975fa2139e49e31b 100644 |
--- a/chromeos/network/onc/onc_translator_onc_to_shill.cc |
+++ b/chromeos/network/onc/onc_translator_onc_to_shill.cc |
@@ -26,6 +26,12 @@ namespace onc { |
namespace { |
+scoped_ptr<base::ListValue> SingletonStringList(const std::string& str) { |
Greg Spencer (Chromium)
2013/06/28 18:25:50
Singleton seems misleading here: people will assum
pneubeck (no reviews)
2013/07/01 15:12:14
Done.
|
+ base::ListValue* list = new base::ListValue; |
+ list->AppendString(str); |
+ return make_scoped_ptr(list); |
+} |
+ |
scoped_ptr<base::StringValue> ConvertValueToString(const base::Value& value) { |
std::string str; |
if (!value.GetAsString(&str)) |
@@ -101,18 +107,20 @@ void LocalTranslator::TranslateFields() { |
void LocalTranslator::TranslateOpenVPN() { |
// Shill supports only one RemoteCertKU but ONC a list. |
// Copy only the first entry if existing. |
- const base::ListValue* certKUs = NULL; |
- std::string certKU; |
- if (onc_object_->GetListWithoutPathExpansion(vpn::kRemoteCertKU, &certKUs) && |
- certKUs->GetString(0, &certKU)) { |
+ const base::ListValue* cert_kus = NULL; |
+ std::string cert_ku; |
+ if (onc_object_->GetListWithoutPathExpansion(vpn::kRemoteCertKU, &cert_kus) && |
+ cert_kus->GetString(0, &cert_ku)) { |
shill_dictionary_->SetStringWithoutPathExpansion( |
- flimflam::kOpenVPNRemoteCertKUProperty, certKU); |
+ flimflam::kOpenVPNRemoteCertKUProperty, cert_ku); |
} |
for (base::DictionaryValue::Iterator it(*onc_object_); !it.IsAtEnd(); |
it.Advance()) { |
scoped_ptr<base::Value> translated; |
- if (it.key() == vpn::kSaveCredentials || it.key() == vpn::kRemoteCertKU) { |
+ if (it.key() == vpn::kSaveCredentials || |
+ it.key() == vpn::kRemoteCertKU || |
+ it.key() == openvpn::kServerCAPEMs) { |
translated.reset(it.value().DeepCopy()); |
} else { |
// Shill wants all Provider/VPN fields to be strings. |