| OLD | NEW |
| (Empty) |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "components/wifi_sync/network_state_helper_chromeos.h" | |
| 6 | |
| 7 #include <memory> | |
| 8 | |
| 9 #include "base/logging.h" | |
| 10 #include "chromeos/network/network_state.h" | |
| 11 #include "chromeos/network/network_state_handler.h" | |
| 12 #include "chromeos/network/network_type_pattern.h" | |
| 13 #include "components/wifi_sync/wifi_security_class.h" | |
| 14 | |
| 15 namespace wifi_sync { | |
| 16 | |
| 17 WifiCredential::CredentialSet GetWifiCredentialsForShillProfile( | |
| 18 chromeos::NetworkStateHandler* network_state_handler, | |
| 19 const std::string& shill_profile_path) { | |
| 20 DCHECK(network_state_handler); | |
| 21 | |
| 22 chromeos::NetworkStateHandler::NetworkStateList networks; | |
| 23 network_state_handler->GetNetworkListByType( | |
| 24 chromeos::NetworkTypePattern::WiFi(), | |
| 25 true /* configured_only */, | |
| 26 false /* visible_only */, | |
| 27 0 /* unlimited result size */, | |
| 28 &networks); | |
| 29 | |
| 30 auto credentials(WifiCredential::MakeSet()); | |
| 31 for (const chromeos::NetworkState* network : networks) { | |
| 32 if (network->profile_path() != shill_profile_path) | |
| 33 continue; | |
| 34 | |
| 35 // TODO(quiche): Fill in the actual passphrase via an asynchronous | |
| 36 // call to a chromeos::NetworkConfigurationHandler instance's | |
| 37 // GetProperties method. | |
| 38 std::unique_ptr<WifiCredential> credential = WifiCredential::Create( | |
| 39 network->raw_ssid(), | |
| 40 WifiSecurityClassFromShillSecurity(network->security_class()), | |
| 41 "" /* empty passphrase */); | |
| 42 if (!credential) | |
| 43 LOG(ERROR) << "Failed to create credential"; | |
| 44 else | |
| 45 credentials.insert(*credential); | |
| 46 } | |
| 47 return credentials; | |
| 48 } | |
| 49 | |
| 50 } // namespace wifi_sync | |
| OLD | NEW |