From ba484d0f2544c371b42d3a54d2b600e31b208bf1 Mon Sep 17 00:00:00 2001 From: Samuel Ortiz Date: Wed, 29 Sep 2010 19:29:22 +0200 Subject: Define connman_network_set_passphrase This is needed for the supplicant plugin to reset a service passphrase when authentication fails. --- include/network.h | 2 ++ src/network.c | 28 ++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/include/network.h b/include/network.h index 96d2d28f..d71381b8 100644 --- a/include/network.h +++ b/include/network.h @@ -114,6 +114,8 @@ int connman_network_set_string(struct connman_network *network, const char *key, const char *value); const char *connman_network_get_string(struct connman_network *network, const char *key); +int connman_network_set_passphrase(struct connman_network *network, + const char* passphrase); int connman_network_set_bool(struct connman_network *network, const char *key, connman_bool_t value); connman_bool_t connman_network_get_bool(struct connman_network *network, diff --git a/src/network.c b/src/network.c index aebf7cf7..079453c0 100644 --- a/src/network.c +++ b/src/network.c @@ -1441,6 +1441,34 @@ const char *connman_network_get_string(struct connman_network *network, return connman_element_get_string(&network->element, key); } +/** + * connman_network_set_passphrase: + * @network: network structure + * @passphrase: network passphrase + * + * Set network passphrase. + * If the network is linked to a service, the latter gets his passphrase + * set as well. + */ +int connman_network_set_passphrase(struct connman_network *network, + const char* passphrase) +{ + struct connman_service *service; + + service = __connman_service_lookup_from_network(network); + if (service == NULL) { + connman_network_set_string(network, "WiFi.Passphrase", + passphrase); + + return 0; + } + + __connman_service_set_passphrase(service, passphrase); + + return 0; +} + + /** * connman_network_set_bool: * @network: network structure -- cgit v1.2.3