[Patch] password dialogue improvements

Albrecht Dreß <[email protected]>
Newsgroups gmane.comp.gnome.apps.balsa
Message-ID <[email protected]>
Hi all,

attached is a patch for cleaning up improving Balsa's password ui.

(1) If available, use the GCR password dialogue.
(2) Implement asking the user for a user certificates passphrase if required, using the same dialogue as the password dialogue.
(3) Clean up the LibBalsaServer signals (see [1]).  Regarding the "get-password" signal, the additional LibBalsaMailbox argument which was never used properly (passing the mailbox to config_mailbox_init() in src/save-restore.c, l. 422, sets the /third/ user_data argument of the callback which is never evaluated) is replaced by a string which is either empty for reading the user password, or contains the user certificate's subject for the passphrase of the latter.
(4) Simplify the user certificate passphrase callback from libnetclient by passing the certificate subject instead of the certificate binary data.
(5) Reading the password can be simplified due to the omitted (useless) LibBalsaMailbox argument.

Please note that the patch goes on top of the following pending patches:
* the “unified server configuration GUI” patch I submitted October 21st,
* Peter's fixes for building with LDAP support for this patch and
* the “Fix broken IMAP Kerberos authentication” patch I submitted October 23rd.

There are still some open points (e.g. user certificates for IMAP, clearing the passwords for auth failures, etc.) which I will address in a separate patch (soon, I hope).

As usual, any comment is highly welcome!

Cheers,
Albrecht.

[1] <https://mail.gnome.org/archives/balsa-list/2018-October/msg00010.html>

---
Patch details:
* libbalsa/imap-server.c, libbalsa/server-config.c, libinit_balsa/assistant_page_user.c, src/save-restore.c: use changed libbalsa_server_set_password() api
* libbalsa/libbalsa.[c]: implement GTK_DIALOG_USE_HEADER_BAR detection as boolean for GCR dialogue
* libbalsa/server.[ch]: clean up signal definitions (remove obsolete marshallers); remove unused class method; adjust api's for libbalsa_server_set_password(), libbalsa_server_get_password() and libbalsa_server_get_cert_pass()
* libnetclient/net-client.[ch]: pass cert subject only instead of full binary data in the passphrase signal
* src/balsa-app.[ch]: use GCR password dialogue if available; drop set_passwd_from_matching_server() which is never used

_______________________________________________
balsa-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/balsa-list
passwd-dlg.diff.bz2 (application/x-bzip, 6.7 KB) - not displayed
signature.asc (application/pgp-signature, 488 B)
-----BEGIN PGP SIGNATURE-----

iQEzBAABCgAdFiEEcCEPemLFTtyGf4zATKlvDmfn2fgFAlvezKoACgkQTKlvDmfn
2fhGUwgA1qx4I3C7LtB7rAzSS3zWntFfMIf6xaomtVGgvJaBEMF9cG1YNvqaqD3I
B1e63yDiOviRkEv+YyI130Z2ymzO63xN5cmBpNXlfiBQlJgP4nc70LpNZtrYpJCd
RH6RVyP7EiUuLIMn/ua6PjsAYLKtcGpKO86LeaN5sTQOcW3Tuxkuz86vDNYuBeTe
TfgN7dK+/URWVhmoJJPRkLmnBTb3mOMus4PGiNEr2zrI3pguAMiRznuko7+ZfZld
+Vebpk22z1z9QY266D0+odlAiVkPpG7GQrxWqT/TviriCnOUFuSXTiI7nRmwN8Y/
815v5hWmHIddWiw9Tj28sUVTlrXvHQ==
=Yoxc
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.