Chromium Code Reviews| Index: components/wifi_sync/network_state_helper_chromeos.cc |
| diff --git a/components/wifi_sync/network_state_helper_chromeos.cc b/components/wifi_sync/network_state_helper_chromeos.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..a5eb618b8263da39bf0b9e80086bf55fc6e00201 |
| --- /dev/null |
| +++ b/components/wifi_sync/network_state_helper_chromeos.cc |
| @@ -0,0 +1,47 @@ |
| +// Copyright 2014 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#include "components/wifi_sync/network_state_helper_chromeos.h" |
| + |
| +#include "base/logging.h" |
| +#include "chromeos/network/network_state.h" |
| +#include "chromeos/network/network_state_handler.h" |
| +#include "components/wifi_sync/wifi_credential.h" |
|
erikwright (departed)
2014/12/08 21:21:36
not needed (in header)
mukesh agrawal
2014/12/09 01:41:11
Done.
|
| +#include "components/wifi_sync/wifi_security_class.h" |
| + |
| +namespace wifi_sync { |
| + |
| +WifiCredential::CredentialSet GetWifiCredentialsForShillProfile( |
| + chromeos::NetworkStateHandler* network_state_handler, |
| + const std::string& shill_profile_path) { |
| + DCHECK(network_state_handler); |
| + |
| + chromeos::NetworkStateHandler::NetworkStateList networks; |
| + network_state_handler->GetNetworkListByType( |
| + chromeos::NetworkTypePattern::WiFi(), |
|
erikwright (departed)
2014/12/08 21:21:36
#include chromeos/network/network_type_pattern.h
mukesh agrawal
2014/12/09 01:41:10
Done.
|
| + true /* configured_only */, |
| + false /* visible_only */, |
| + 0 /* unlimited result size */, |
| + &networks); |
| + |
| + auto credentials(WifiCredential::MakeSet()); |
| + for (const chromeos::NetworkState* network : networks) { |
| + if (network->profile_path() != shill_profile_path) |
| + continue; |
| + |
| + // TODO(quiche): Switch away from network->security(), once we have |
| + // a security_class() field in NetworkState. |
| + // |
| + // TODO(quiche): Fill in the actual passphrase via an asynchronous |
| + // call to a chromeos::NetworkConfigurationHandler instance's |
| + // GetProperties method. |
| + credentials.insert( |
| + WifiCredential(network->raw_ssid(), |
| + WifiSecurityClassFromShillSecurity(network->security()), |
| + "" /* empty passphrase */)); |
| + } |
| + return credentials; |
| +} |
| + |
| +} // namespace wifi_sync |