summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrik Flykt <patrik.flykt@nokia.com>2011-02-04 15:14:21 +0200
committerSamuel Ortiz <sameo@linux.intel.com>2011-02-08 00:59:54 +0100
commitd844a8420a3594b12a94b8fe64101152f173bee9 (patch)
tree8c14d2578f17efdcdbe2f0e2414c6c8f631090e3
parent27a2212edc59b51ce6735cd2872fed9c4be74192 (diff)
downloadconnman-d844a8420a3594b12a94b8fe64101152f173bee9.tar.gz
connman-d844a8420a3594b12a94b8fe64101152f173bee9.tar.bz2
connman-d844a8420a3594b12a94b8fe64101152f173bee9.zip
network: Add CONNMAN_NETWORK_ERROR_INVALID_KEY for a network
Add invalid key/passphrase definition for a network and propagate it to the associated service.
-rw-r--r--include/network.h1
-rw-r--r--src/network.c13
2 files changed, 14 insertions, 0 deletions
diff --git a/include/network.h b/include/network.h
index 0266b5e9..6b93f169 100644
--- a/include/network.h
+++ b/include/network.h
@@ -51,6 +51,7 @@ enum connman_network_error {
CONNMAN_NETWORK_ERROR_UNKNOWN = 0,
CONNMAN_NETWORK_ERROR_ASSOCIATE_FAIL = 1,
CONNMAN_NETWORK_ERROR_CONFIGURE_FAIL = 2,
+ CONNMAN_NETWORK_ERROR_INVALID_KEY = 3,
};
#define CONNMAN_NETWORK_PRIORITY_LOW -100
diff --git a/src/network.c b/src/network.c
index 02d7c5ca..09d4d2b9 100644
--- a/src/network.c
+++ b/src/network.c
@@ -534,6 +534,16 @@ static void set_configure_error(struct connman_network *network)
CONNMAN_SERVICE_STATE_FAILURE);
}
+static void set_invalid_key_error(struct connman_network *network)
+{
+ struct connman_service *service;
+
+ service = __connman_service_lookup_from_network(network);
+
+ __connman_service_indicate_error(service,
+ CONNMAN_SERVICE_ERROR_INVALID_KEY);
+}
+
void connman_network_set_ipv4_method(struct connman_network *network,
enum connman_ipconfig_method method)
{
@@ -588,6 +598,9 @@ void connman_network_set_error(struct connman_network *network,
case CONNMAN_NETWORK_ERROR_CONFIGURE_FAIL:
set_configure_error(network);
break;
+ case CONNMAN_NETWORK_ERROR_INVALID_KEY:
+ set_invalid_key_error(network);
+ break;
}
}