summaryrefslogtreecommitdiffstats
path: root/ash
diff options
context:
space:
mode:
authorstevenjb@chromium.org <stevenjb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-08-30 16:00:46 +0000
committerstevenjb@chromium.org <stevenjb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-08-30 16:00:46 +0000
commit34bfccf69ddfe4285162a10361c04680e037c6a2 (patch)
tree7e1bf5f96704ba0e7306b6a606d1b2a74cd3abec /ash
parent1f03a75fe0b9e3722c2ba201ff1e27b5ccfc5af7 (diff)
downloadchromium_src-34bfccf69ddfe4285162a10361c04680e037c6a2.zip
chromium_src-34bfccf69ddfe4285162a10361c04680e037c6a2.tar.gz
chromium_src-34bfccf69ddfe4285162a10361c04680e037c6a2.tar.bz2
Differentiate between 'connect-failed' and 'bad-passphrase'
Now that all connection requests are going through NetworkConnectionHandler we can start to improve the connect flow logic. 'connect-failed' can indicate a lot of things; we shouldn't assume that configuration is required when that Error state is set. BUG=278559 R=pneubeck@chromium.org Review URL: https://codereview.chromium.org/22867045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@220596 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash')
-rw-r--r--ash/system/chromeos/network/network_connect.cc12
-rw-r--r--ash/system/chromeos/network/network_connect.h2
-rw-r--r--ash/system/chromeos/network/network_state_notifier.cc2
3 files changed, 10 insertions, 6 deletions
diff --git a/ash/system/chromeos/network/network_connect.cc b/ash/system/chromeos/network/network_connect.cc
index 0e53569..3002856 100644
--- a/ash/system/chromeos/network/network_connect.cc
+++ b/ash/system/chromeos/network/network_connect.cc
@@ -75,7 +75,8 @@ void OnConnectFailed(const std::string& service_path,
if (error_name == NetworkConnectionHandler::kErrorConnectCanceled)
return;
- if (error_name == NetworkConnectionHandler::kErrorPassphraseRequired ||
+ if (error_name == flimflam::kErrorBadPassphrase ||
+ error_name == NetworkConnectionHandler::kErrorPassphraseRequired ||
error_name == NetworkConnectionHandler::kErrorConfigurationRequired ||
error_name == NetworkConnectionHandler::kErrorAuthenticationRequired) {
ash::Shell::GetInstance()->system_tray_delegate()->ConfigureNetwork(
@@ -104,7 +105,7 @@ void OnConnectFailed(const std::string& service_path,
ShowErrorNotification(error_name, service_path);
// Show a configure dialog for ConnectFailed errors.
- if (error_name != NetworkConnectionHandler::kErrorConnectFailed)
+ if (error_name != flimflam::kErrorConnectFailed)
return;
// If Shill reports an InProgress error, don't try to configure the network.
@@ -147,11 +148,10 @@ void CallConnectToNetwork(const std::string& service_path,
}
void OnActivateFailed(const std::string& service_path,
- const std::string& error_name,
+ const std::string& error_name,
scoped_ptr<base::DictionaryValue> error_data) {
NET_LOG_ERROR("Unable to activate network", service_path);
- ShowErrorNotification(
- NetworkConnectionHandler::kErrorActivateFailed, service_path);
+ ShowErrorNotification(network_connect::kErrorActivateFailed, service_path);
}
void OnActivateSucceeded(const std::string& service_path) {
@@ -261,6 +261,8 @@ const char kNetworkConnectNotificationId[] =
const char kNetworkActivateNotificationId[] =
"chrome://settings/internet/activate";
+const char kErrorActivateFailed[] = "activate-failed";
+
void ConnectToNetwork(const std::string& service_path,
gfx::NativeWindow owning_window) {
NET_LOG_USER("ConnectToNetwork", service_path);
diff --git a/ash/system/chromeos/network/network_connect.h b/ash/system/chromeos/network/network_connect.h
index eb7df2e..7868d23 100644
--- a/ash/system/chromeos/network/network_connect.h
+++ b/ash/system/chromeos/network/network_connect.h
@@ -21,6 +21,8 @@ namespace network_connect {
ASH_EXPORT extern const char kNetworkConnectNotificationId[];
ASH_EXPORT extern const char kNetworkActivateNotificationId[];
+ASH_EXPORT extern const char kErrorActivateFailed[];
+
// Requests a network connection and handles any errors and notifications.
// |owning_window| is used to parent any UI on failure (e.g. for certificate
// enrollment). If NULL, the default window will be used.
diff --git a/ash/system/chromeos/network/network_state_notifier.cc b/ash/system/chromeos/network/network_state_notifier.cc
index 1baa151..08fd96f 100644
--- a/ash/system/chromeos/network/network_state_notifier.cc
+++ b/ash/system/chromeos/network/network_state_notifier.cc
@@ -43,7 +43,7 @@ string16 GetConnectErrorString(const std::string& error_name) {
if (error_name == NetworkConnectionHandler::kErrorConfigureFailed)
return l10n_util::GetStringUTF16(
IDS_CHROMEOS_NETWORK_ERROR_CONFIGURE_FAILED);
- if (error_name == NetworkConnectionHandler::kErrorActivateFailed)
+ if (error_name == ash::network_connect::kErrorActivateFailed)
return l10n_util::GetStringUTF16(
IDS_CHROMEOS_NETWORK_ERROR_ACTIVATION_FAILED);
return string16();