| 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..54b853527ca2cbe55616ec307c9d75bae14f6c90
|
| --- /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 "chromeos/network/network_type_pattern.h"
|
| +#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(),
|
| + 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
|
|
|