Re: [Patch] unified server configuration GUI



Hi Albrecht!

On 10/21/2018 01:35:24 PM Sun, Albrecht Dreß wrote:
Hi all,

as I promised a few days ago, I now created a quite large patch for consolidating the server configuration and GUI 
for SMTP, POP3 and IMAP.  As the patch is rather large (too large for the mailing list limit), please load it from 
my web site <https://www.mynetcologne.de/~nc-dreszal/server-config.diff.bz2>.

Basically, I created a new module libbalsa/server-config.[ch] which takes care of creating a GUI for all the 
common options.  By using the new class, a lot of duplicated and partly inconsistent code (e.g. there is no 
option for storing the IMAP server password in the key ring) can be removed.

I tested in valgrind for smtp and all types of local and remote mailboxes: new + cancel, new + ok, modify + 
cancel, modify + ok and delete, so I /think/ it is usable.  However, due to the amount and complexity of 
changes, a review would be highly appreciated…

Please note that there are still some open points:
- User certificate passphrases: the code for asking the user if the passphrase shall not be stored is still 
missing.  As this is a rarely used option, it's no blocker IMHO.
- The IMAP connection should use (derive, inherit) LibBalsaServer which will also simplify the code.  Now, 
user certificates are not working although there is a config gui (again, no blocker, though).
- Dovecot offers “EXTERNAL” IMAP authentication in combination with user certificates, which is also not yet 
supported.
- If we build using gcr, the password gcr dialogue should be used if possible.
- In general, we might want to re-think our approach of keeping user credentials in memory, at least if we 
have libsecret: keeping them in unsafe (pageable) memory should be avoided.

As always, any comment will be highly welcome!

Best,
Albrecht

Thanks for the work, and the patch! It applies and builds[0], and I'm testing it now. All looks good so far!

As you note, the patch is large ( > 3000 lines!), but I'll at least skim it to see if (G_UNLIKELY) I have any 
comments.

Best,

Peter

[0] I had to add an additional FALSE argument to some libbalsa-conf calls in address-book-ldap.

Attachment: pgpz7Mr_hAV80.pgp
Description: PGP signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]