From: Patrik Flykt <patrik.fl...@nokia.com>

Add invalid key/passphrase definition for a network and propagate
it to the associated service.
---
 include/network.h |    1 +
 src/network.c     |   13 +++++++++++++
 2 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/include/network.h b/include/network.h
index 0266b5e..6b93f16 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 02d7c5c..09d4d2b 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;
        }
 }
 
-- 
1.7.2.3

_______________________________________________
connman mailing list
connman@connman.net
http://lists.connman.net/listinfo/connman

Reply via email to