diff options
author | Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com> | 2012-05-02 16:46:09 +0300 |
---|---|---|
committer | Patrik Flykt <patrik.flykt@linux.intel.com> | 2012-05-04 11:10:08 +0300 |
commit | 815dc93c33a379abf346fbef1640bbf15f23b286 (patch) | |
tree | a51afd09bdcb9547f43064fff7e42d0236befe4d | |
parent | 0e3a21069677342e6096441c78f2b6b2ab368a16 (diff) | |
download | connman-815dc93c33a379abf346fbef1640bbf15f23b286.tar.gz connman-815dc93c33a379abf346fbef1640bbf15f23b286.tar.bz2 connman-815dc93c33a379abf346fbef1640bbf15f23b286.zip |
agent: Adding a parameter to give the error name to browser callback
-rw-r--r-- | src/agent.c | 9 | ||||
-rw-r--r-- | src/connman.h | 2 | ||||
-rw-r--r-- | src/wispr.c | 2 |
3 files changed, 8 insertions, 5 deletions
diff --git a/src/agent.c b/src/agent.c index 96d40caa..33a11ecd 100644 --- a/src/agent.c +++ b/src/agent.c @@ -529,15 +529,18 @@ static void request_browser_reply(DBusPendingCall *call, void *user_data) struct request_browser_reply_data *browser_reply_data = user_data; DBusMessage *reply = dbus_pending_call_steal_reply(call); connman_bool_t result = FALSE; + const char *error = NULL; - if (dbus_message_get_type(reply) == DBUS_MESSAGE_TYPE_ERROR) + if (dbus_message_get_type(reply) == DBUS_MESSAGE_TYPE_ERROR) { + error = dbus_message_get_error_name(reply); goto done; + } result = TRUE; done: - browser_reply_data->callback(browser_reply_data->service, - result, browser_reply_data->user_data); + browser_reply_data->callback(browser_reply_data->service, result, + error, browser_reply_data->user_data); connman_service_unref(browser_reply_data->service); dbus_message_unref(reply); g_free(browser_reply_data); diff --git a/src/connman.h b/src/connman.h index 2e8cfee8..08086328 100644 --- a/src/connman.h +++ b/src/connman.h @@ -94,7 +94,7 @@ typedef void (* authentication_cb_t) (struct connman_service *service, const char *error, void *user_data); typedef void (* browser_authentication_cb_t) (struct connman_service *service, connman_bool_t authentication_done, - void *user_data); + const char *error, void *user_data); typedef void (* report_error_cb_t) (struct connman_service *service, gboolean retry, void *user_data); int __connman_agent_request_passphrase_input(struct connman_service *service, diff --git a/src/wispr.c b/src/wispr.c index 96bdeb1c..7a99034c 100644 --- a/src/wispr.c +++ b/src/wispr.c @@ -615,7 +615,7 @@ static gboolean wispr_manage_message(GWebResult *result, static void wispr_portal_browser_reply_cb(struct connman_service *service, connman_bool_t authentication_done, - void *user_data) + const char *error, void *user_data) { struct connman_wispr_portal_context *wp_context = user_data; |