From: Patrik Flykt <[email protected]>
Factor out passphrase setting functionality, as it will be needed
by other parts of the hidden network code.
---
src/connman.h | 2 ++
src/service.c | 44 +++++++++++++++++++++++++-------------------
2 files changed, 27 insertions(+), 19 deletions(-)
diff --git a/src/connman.h b/src/connman.h
index 1b68590..ff4a5b7 100644
--- a/src/connman.h
+++ b/src/connman.h
@@ -82,6 +82,8 @@ void __connman_counter_cleanup(void);
struct connman_service;
+void __connman_service_add_passphrase(struct connman_service *service,
+ const gchar *passphrase);
typedef void (* authentication_cb_t) (struct connman_service *service,
connman_bool_t values_received,
const char *name, int name_len,
diff --git a/src/service.c b/src/service.c
index 6ba7918..782000e 100644
--- a/src/service.c
+++ b/src/service.c
@@ -3976,6 +3976,29 @@ static void report_error_cb(struct connman_service
*service,
}
}
+void __connman_service_add_passphrase(struct connman_service *service,
+ const gchar *passphrase)
+{
+ switch (service->security) {
+ case CONNMAN_SERVICE_SECURITY_WEP:
+ case CONNMAN_SERVICE_SECURITY_PSK:
+ __connman_service_set_passphrase(service, passphrase);
+ break;
+ case CONNMAN_SERVICE_SECURITY_8021X:
+ __connman_service_set_agent_passphrase(service,
+ passphrase);
+ break;
+ case CONNMAN_SERVICE_SECURITY_UNKNOWN:
+ case CONNMAN_SERVICE_SECURITY_NONE:
+ case CONNMAN_SERVICE_SECURITY_WPA:
+ case CONNMAN_SERVICE_SECURITY_RSN:
+ DBG("service security '%s' not handled",
+ security2string(service->security));
+ break;
+ }
+
+}
+
static void request_input_cb (struct connman_service *service,
connman_bool_t values_received,
const char *name, int name_len,
@@ -3994,25 +4017,8 @@ static void request_input_cb (struct connman_service
*service,
if (identity != NULL)
__connman_service_set_agent_identity(service, identity);
- if (passphrase != NULL) {
- switch (service->security) {
- case CONNMAN_SERVICE_SECURITY_WEP:
- case CONNMAN_SERVICE_SECURITY_PSK:
- __connman_service_set_passphrase(service, passphrase);
- break;
- case CONNMAN_SERVICE_SECURITY_8021X:
- __connman_service_set_agent_passphrase(service,
- passphrase);
- break;
- case CONNMAN_SERVICE_SECURITY_UNKNOWN:
- case CONNMAN_SERVICE_SECURITY_NONE:
- case CONNMAN_SERVICE_SECURITY_WPA:
- case CONNMAN_SERVICE_SECURITY_RSN:
- DBG("service security '%s' not handled",
- security2string(service->security));
- break;
- }
- }
+ if (passphrase != NULL)
+ __connman_service_add_passphrase(service, passphrase);
__connman_service_connect(service);
--
1.7.2.5
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman