| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chromeos/network/network_connection_handler.h" | 5 #include "chromeos/network/network_connection_handler.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "base/json/json_reader.h" | 9 #include "base/json/json_reader.h" |
| 10 #include "chromeos/chromeos_switches.h" | 10 #include "chromeos/chromeos_switches.h" |
| (...skipping 29 matching lines...) Expand all Loading... |
| 40 } | 40 } |
| 41 | 41 |
| 42 bool IsAuthenticationError(const std::string& error) { | 42 bool IsAuthenticationError(const std::string& error) { |
| 43 return (error == flimflam::kErrorBadWEPKey || | 43 return (error == flimflam::kErrorBadWEPKey || |
| 44 error == flimflam::kErrorPppAuthFailed || | 44 error == flimflam::kErrorPppAuthFailed || |
| 45 error == shill::kErrorEapLocalTlsFailed || | 45 error == shill::kErrorEapLocalTlsFailed || |
| 46 error == shill::kErrorEapRemoteTlsFailed || | 46 error == shill::kErrorEapRemoteTlsFailed || |
| 47 error == shill::kErrorEapAuthenticationFailed); | 47 error == shill::kErrorEapAuthenticationFailed); |
| 48 } | 48 } |
| 49 | 49 |
| 50 bool NetworkRequiresActivation(const NetworkState* network) { | |
| 51 return (network->type() == flimflam::kTypeCellular && | |
| 52 ((network->activation_state() != flimflam::kActivationStateActivated && | |
| 53 network->activation_state() != flimflam::kActivationStateUnknown))); | |
| 54 } | |
| 55 | |
| 56 bool VPNIsConfigured(const std::string& service_path, | 50 bool VPNIsConfigured(const std::string& service_path, |
| 57 const std::string& provider_type, | 51 const std::string& provider_type, |
| 58 const base::DictionaryValue& provider_properties) { | 52 const base::DictionaryValue& provider_properties) { |
| 59 if (provider_type == flimflam::kProviderOpenVpn) { | 53 if (provider_type == flimflam::kProviderOpenVpn) { |
| 60 std::string hostname; | 54 std::string hostname; |
| 61 provider_properties.GetStringWithoutPathExpansion( | 55 provider_properties.GetStringWithoutPathExpansion( |
| 62 flimflam::kHostProperty, &hostname); | 56 flimflam::kHostProperty, &hostname); |
| 63 if (hostname.empty()) { | 57 if (hostname.empty()) { |
| 64 NET_LOG_EVENT("OpenVPN: No hostname", service_path); | 58 NET_LOG_EVENT("OpenVPN: No hostname", service_path); |
| 65 return false; | 59 return false; |
| (...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 223 if (network) { | 217 if (network) { |
| 224 // For existing networks, perform some immediate consistency checks. | 218 // For existing networks, perform some immediate consistency checks. |
| 225 if (network->IsConnectedState()) { | 219 if (network->IsConnectedState()) { |
| 226 InvokeErrorCallback(service_path, error_callback, kErrorConnected); | 220 InvokeErrorCallback(service_path, error_callback, kErrorConnected); |
| 227 return; | 221 return; |
| 228 } | 222 } |
| 229 if (network->IsConnectingState()) { | 223 if (network->IsConnectingState()) { |
| 230 InvokeErrorCallback(service_path, error_callback, kErrorConnecting); | 224 InvokeErrorCallback(service_path, error_callback, kErrorConnecting); |
| 231 return; | 225 return; |
| 232 } | 226 } |
| 233 if (NetworkRequiresActivation(network)) { | 227 if (network->RequiresActivation()) { |
| 234 InvokeErrorCallback(service_path, error_callback, | 228 InvokeErrorCallback(service_path, error_callback, |
| 235 kErrorActivationRequired); | 229 kErrorActivationRequired); |
| 236 return; | 230 return; |
| 237 } | 231 } |
| 238 | 232 |
| 239 if (check_error_state) { | 233 if (check_error_state) { |
| 240 const std::string& error = network->error(); | 234 const std::string& error = network->error(); |
| 241 if (error == flimflam::kErrorBadPassphrase) { | 235 if (error == flimflam::kErrorBadPassphrase) { |
| 242 InvokeErrorCallback(service_path, error_callback, error); | 236 InvokeErrorCallback(service_path, error_callback, error); |
| 243 return; | 237 return; |
| (...skipping 399 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 643 | 637 |
| 644 void NetworkConnectionHandler::HandleShillDisconnectSuccess( | 638 void NetworkConnectionHandler::HandleShillDisconnectSuccess( |
| 645 const std::string& service_path, | 639 const std::string& service_path, |
| 646 const base::Closure& success_callback) { | 640 const base::Closure& success_callback) { |
| 647 NET_LOG_EVENT("Disconnect Request Sent", service_path); | 641 NET_LOG_EVENT("Disconnect Request Sent", service_path); |
| 648 if (!success_callback.is_null()) | 642 if (!success_callback.is_null()) |
| 649 success_callback.Run(); | 643 success_callback.Run(); |
| 650 } | 644 } |
| 651 | 645 |
| 652 } // namespace chromeos | 646 } // namespace chromeos |
| OLD | NEW |