From: Jonny Lamb Date: Mon, 6 Dec 2010 10:06:51 +0000 (+0000) Subject: server-sasl-handler: save the password if requested X-Git-Url: https://git.0d.be/?p=empathy.git;a=commitdiff_plain;h=b66750b8540761c03b935ff93d50c642c9d1f07c server-sasl-handler: save the password if requested Signed-off-by: Jonny Lamb --- diff --git a/libempathy/empathy-server-sasl-handler.c b/libempathy/empathy-server-sasl-handler.c index b71cbdb7..d9f50494 100644 --- a/libempathy/empathy-server-sasl-handler.c +++ b/libempathy/empathy-server-sasl-handler.c @@ -359,6 +359,25 @@ start_mechanism_with_data_cb (TpChannel *proxy, DEBUG ("Started mechanism successfully"); } +static void +empathy_server_sasl_handler_set_password_cb (GObject *source, + GAsyncResult *result, + gpointer user_data) +{ + GError *error = NULL; + + if (!empathy_keyring_set_password_finish (TP_ACCOUNT (source), result, + &error)) + { + DEBUG ("Failed to set password: %s", error->message); + g_clear_error (&error); + } + else + { + DEBUG ("Password set successfully."); + } +} + void empathy_server_sasl_handler_provide_password ( EmpathyServerSASLHandler *handler, @@ -389,7 +408,8 @@ empathy_server_sasl_handler_provide_password ( if (remember) { - /* TODO */ + empathy_keyring_set_password_async (priv->account, password, + empathy_server_sasl_handler_set_password_cb, NULL); } }