From: Patrik Flykt <[email protected]>
Change password query to use RequestInput method call instead of
RequestPassphrase. The supplied passphrase_cb_t function sets the password
returned via Agent API and tries to reconnect to the service.
---
src/service.c | 21 +++++++++++++++++----
1 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/src/service.c b/src/service.c
index 42c8339..ca694f1 100644
--- a/src/service.c
+++ b/src/service.c
@@ -1862,6 +1862,17 @@ static connman_bool_t get_reconnect_state(struct
connman_service *service)
return __connman_device_get_reconnect(device);
}
+static void request_input_cb (struct connman_service *service,
+ const char *passphrase, void *user_data)
+{
+ DBG ("RequestInput return, %p", service);
+
+ if (passphrase == NULL)
+ return;
+ connman_service_set_passphrase(service, passphrase);
+ __connman_service_connect(service);
+}
+
struct connman_service *
__connman_service_connect_type(enum connman_service_type type)
{
@@ -1911,8 +1922,9 @@ __connman_service_connect_type(enum connman_service_type
type)
err = __connman_service_connect(service);
if (err < 0) {
if (err == -ENOKEY)
- if (__connman_agent_request_passphrase(service,
- NULL, NULL))
+ if ( __connman_agent_request_input(service,
+ request_input_cb,
+ NULL))
return service;
if (err != -EINPROGRESS)
@@ -1957,8 +1969,9 @@ static DBusMessage *connect_service(DBusConnection *conn,
err = __connman_service_connect(service);
if (err < 0) {
if (err == -ENOKEY) {
- if (__connman_agent_request_passphrase(service,
- NULL, NULL) == 0)
+ if (__connman_agent_request_input(service,
+ request_input_cb,
+ NULL) == 0)
return NULL;
}
--
1.7.1
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman