diff options
5 files changed, 20 insertions, 16 deletions
diff --git a/chrome/browser/chromeos/cros/mock_network_library.h b/chrome/browser/chromeos/cros/mock_network_library.h index d7ccb46..aa0b469 100644 --- a/chrome/browser/chromeos/cros/mock_network_library.h +++ b/chrome/browser/chromeos/cros/mock_network_library.h @@ -155,7 +155,7 @@ class MockNetworkLibrary : public NetworkLibrary { HardwareAddressFormat)); MOCK_METHOD1(SetIPConfig, void(const NetworkIPConfig&)); MOCK_METHOD0(SwitchToPreferredNetwork, void(void)); - MOCK_METHOD1(LoadOncNetworks, bool(const std::string&)); + MOCK_METHOD2(LoadOncNetworks, bool(const std::string&, const std::string&)); MOCK_METHOD2(SetActiveNetwork, bool(ConnectionType, const std::string&)); }; diff --git a/chrome/browser/chromeos/cros/network_library.cc b/chrome/browser/chromeos/cros/network_library.cc index f273562..770871e 100644 --- a/chrome/browser/chromeos/cros/network_library.cc +++ b/chrome/browser/chromeos/cros/network_library.cc @@ -1730,7 +1730,8 @@ class NetworkLibraryImplBase : public NetworkLibrary { // virtual GetIPConfigs implemented in derived classes. // virtual SetIPConfig implemented in derived classes. virtual void SwitchToPreferredNetwork() OVERRIDE; - virtual bool LoadOncNetworks(const std::string& onc_blob) OVERRIDE; + virtual bool LoadOncNetworks(const std::string& onc_blob, + const std::string& passcode) OVERRIDE; virtual bool SetActiveNetwork(ConnectionType type, const std::string& service_path) OVERRIDE; @@ -2818,7 +2819,9 @@ void NetworkLibraryImplBase::SwitchToPreferredNetwork() { } } -bool NetworkLibraryImplBase::LoadOncNetworks(const std::string& onc_blob) { +bool NetworkLibraryImplBase::LoadOncNetworks(const std::string& onc_blob, + const std::string& passcode) { + // TODO(gspencer): Add support for decrypting onc files. crbug.com/19397 OncNetworkParser parser(onc_blob); for (int i = 0; i < parser.GetCertificatesSize(); i++) { @@ -5076,7 +5079,7 @@ void NetworkLibraryImplStub::Init() { " ]," " \"Certificates\": []" "}"); - LoadOncNetworks(test_blob); + LoadOncNetworks(test_blob, ""); } //////////////////////////////////////////////////////////////////////////// diff --git a/chrome/browser/chromeos/cros/network_library.h b/chrome/browser/chromeos/cros/network_library.h index 07de4df..9d2a415 100644 --- a/chrome/browser/chromeos/cros/network_library.h +++ b/chrome/browser/chromeos/cros/network_library.h @@ -1367,7 +1367,7 @@ class NetworkLibrary { // for example, networks have appeared or disappeared. virtual void OnNetworkManagerChanged(NetworkLibrary* obj) = 0; protected: - ~NetworkManagerObserver() { } + virtual ~NetworkManagerObserver() { } }; class NetworkObserver { @@ -1377,7 +1377,7 @@ class NetworkLibrary { virtual void OnNetworkChanged(NetworkLibrary* cros, const Network* network) = 0; protected: - ~NetworkObserver() {} + virtual ~NetworkObserver() {} }; class NetworkDeviceObserver { @@ -1394,7 +1394,7 @@ class NetworkLibrary { virtual void OnNetworkDeviceSimLockChanged(NetworkLibrary* cros, const NetworkDevice* device) {} protected: - ~NetworkDeviceObserver() {} + virtual ~NetworkDeviceObserver() {} }; class CellularDataPlanObserver { @@ -1402,7 +1402,7 @@ class NetworkLibrary { // Called when the cellular data plan has changed. virtual void OnCellularDataPlanChanged(NetworkLibrary* obj) = 0; protected: - ~CellularDataPlanObserver() {} + virtual ~CellularDataPlanObserver() {} }; class PinOperationObserver { @@ -1412,7 +1412,7 @@ class NetworkLibrary { virtual void OnPinOperationCompleted(NetworkLibrary* cros, PinOperationError error) = 0; protected: - ~PinOperationObserver() {} + virtual ~PinOperationObserver() {} }; class UserActionObserver { @@ -1422,7 +1422,7 @@ class NetworkLibrary { virtual void OnConnectionInitiated(NetworkLibrary* cros, const Network* network) = 0; protected: - ~UserActionObserver() {} + virtual ~UserActionObserver() {} }; virtual ~NetworkLibrary() {} @@ -1743,7 +1743,8 @@ class NetworkLibrary { virtual void SwitchToPreferredNetwork() = 0; // Load networks from an Open Network Configuration blob. - virtual bool LoadOncNetworks(const std::string& onc_blob) = 0; + virtual bool LoadOncNetworks(const std::string& onc_blob, + const std::string& passcode) = 0; // This sets the active network for the network type. Note: priority order // is unchanged (i.e. if a wifi network is set to active, but an ethernet diff --git a/chrome/browser/policy/network_configuration_updater.cc b/chrome/browser/policy/network_configuration_updater.cc index dd9fc8a..788a010 100644 --- a/chrome/browser/policy/network_configuration_updater.cc +++ b/chrome/browser/policy/network_configuration_updater.cc @@ -56,7 +56,7 @@ void NetworkConfigurationUpdater::ApplyNetworkConfiguration( if (*cached_value != new_network_config) { *cached_value = new_network_config; - if (!network_library_->LoadOncNetworks(new_network_config)) + if (!network_library_->LoadOncNetworks(new_network_config, "")) LOG(WARNING) << "Network library failed to load ONC configuration."; } } diff --git a/chrome/browser/policy/network_configuration_updater_unittest.cc b/chrome/browser/policy/network_configuration_updater_unittest.cc index 001631d..d1e71a2 100644 --- a/chrome/browser/policy/network_configuration_updater_unittest.cc +++ b/chrome/browser/policy/network_configuration_updater_unittest.cc @@ -26,7 +26,7 @@ class NetworkConfigurationUpdaterTest TEST_P(NetworkConfigurationUpdaterTest, InitialUpdate) { provider_.AddPolicy(GetParam(), Value::CreateStringValue(kFakeONC)); - EXPECT_CALL(network_library_, LoadOncNetworks(kFakeONC)) + EXPECT_CALL(network_library_, LoadOncNetworks(kFakeONC, "")) .WillRepeatedly(Return(true)); NetworkConfigurationUpdater updater(&provider_, &network_library_); @@ -37,20 +37,20 @@ TEST_P(NetworkConfigurationUpdaterTest, PolicyChange) { NetworkConfigurationUpdater updater(&provider_, &network_library_); // We should update if policy changes. - EXPECT_CALL(network_library_, LoadOncNetworks(kFakeONC)) + EXPECT_CALL(network_library_, LoadOncNetworks(kFakeONC, "")) .WillOnce(Return(true)); provider_.AddPolicy(GetParam(), Value::CreateStringValue(kFakeONC)); provider_.NotifyPolicyUpdated(); Mock::VerifyAndClearExpectations(&network_library_); // No update if the set the same value again. - EXPECT_CALL(network_library_, LoadOncNetworks(kFakeONC)) + EXPECT_CALL(network_library_, LoadOncNetworks(kFakeONC, "")) .Times(0); provider_.NotifyPolicyUpdated(); Mock::VerifyAndClearExpectations(&network_library_); // Another update is expected if the policy goes away. - EXPECT_CALL(network_library_, LoadOncNetworks("")) + EXPECT_CALL(network_library_, LoadOncNetworks("", "")) .WillOnce(Return(true)); provider_.RemovePolicy(GetParam()); provider_.NotifyPolicyUpdated(); |