libpurple/plugins/libsecret/libsecret.c

changeset 42805
3e77e81168a5
parent 42592
6b65c0e4ba15
child 43027
581af7cd0603
equal deleted inserted replaced
42804:be8c8b5471ca 42805:3e77e81168a5
146 PurpleAccount *account, 146 PurpleAccount *account,
147 GCancellable *cancellable, 147 GCancellable *cancellable,
148 GAsyncReadyCallback callback, 148 GAsyncReadyCallback callback,
149 gpointer data) 149 gpointer data)
150 { 150 {
151 PurpleContactInfo *info = PURPLE_CONTACT_INFO(account);
152 GTask *task = NULL; 151 GTask *task = NULL;
153 152
154 task = g_task_new(provider, cancellable, callback, data); 153 task = g_task_new(provider, cancellable, callback, data);
155 g_task_set_source_tag(task, purple_libsecret_read_password_async); 154 g_task_set_source_tag(task, purple_libsecret_read_password_async);
156 155
157 secret_password_lookup(&purple_libsecret_schema, cancellable, 156 secret_password_lookup(&purple_libsecret_schema, cancellable,
158 purple_libsecret_read_password_callback, task, 157 purple_libsecret_read_password_callback, task,
159 "user", purple_contact_info_get_username(info), 158 "user", purple_account_get_username(account),
160 "protocol", purple_account_get_protocol_id(account), 159 "protocol", purple_account_get_protocol_id(account),
161 NULL); 160 NULL);
162 } 161 }
163 162
164 static gchar * 163 static gchar *
173 } 172 }
174 173
175 static void 174 static void
176 purple_libsecret_write_password_async(PurpleCredentialProvider *provider, 175 purple_libsecret_write_password_async(PurpleCredentialProvider *provider,
177 PurpleAccount *account, 176 PurpleAccount *account,
178 const gchar *password, 177 const char *password,
179 GCancellable *cancellable, 178 GCancellable *cancellable,
180 GAsyncReadyCallback callback, 179 GAsyncReadyCallback callback,
181 gpointer data) 180 gpointer data)
182 { 181 {
183 PurpleContactInfo *info = PURPLE_CONTACT_INFO(account);
184 GTask *task = NULL; 182 GTask *task = NULL;
185 gchar *label = NULL; 183 char *label = NULL;
186 const gchar *username = NULL; 184 const char *username = NULL;
187 185
188 task = g_task_new(provider, cancellable, callback, data); 186 task = g_task_new(provider, cancellable, callback, data);
189 g_task_set_source_tag(task, purple_libsecret_write_password_async); 187 g_task_set_source_tag(task, purple_libsecret_write_password_async);
190 username = purple_contact_info_get_username(info); 188
189 username = purple_account_get_username(account);
191 190
192 label = g_strdup_printf(_("libpurple password for account %s"), username); 191 label = g_strdup_printf(_("libpurple password for account %s"), username);
193 secret_password_store(&purple_libsecret_schema, 192 secret_password_store(&purple_libsecret_schema,
194 SECRET_COLLECTION_DEFAULT, label, password, 193 SECRET_COLLECTION_DEFAULT, label, password,
195 cancellable, 194 cancellable,
216 PurpleAccount *account, 215 PurpleAccount *account,
217 GCancellable *cancellable, 216 GCancellable *cancellable,
218 GAsyncReadyCallback callback, 217 GAsyncReadyCallback callback,
219 gpointer data) 218 gpointer data)
220 { 219 {
221 PurpleContactInfo *info = PURPLE_CONTACT_INFO(account);
222 GTask *task = NULL; 220 GTask *task = NULL;
223 221
224 task = g_task_new(provider, cancellable, callback, data); 222 task = g_task_new(provider, cancellable, callback, data);
225 g_task_set_source_tag(task, purple_libsecret_clear_password_async); 223 g_task_set_source_tag(task, purple_libsecret_clear_password_async);
226 224
227 secret_password_clear(&purple_libsecret_schema, cancellable, 225 secret_password_clear(&purple_libsecret_schema, cancellable,
228 purple_libsecret_clear_password_callback, task, 226 purple_libsecret_clear_password_callback, task,
229 "user", purple_contact_info_get_username(info), 227 "user", purple_account_get_username(account),
230 "protocol", purple_account_get_protocol_id(account), 228 "protocol", purple_account_get_protocol_id(account),
231 NULL); 229 NULL);
232 } 230 }
233 231
234 static gboolean 232 static gboolean

mercurial