Add S/MIME Addressbook integration
* src/addressbook.cpp (parse_output): New. Move the more complex output parsing out. (open_keyadder): Add --cms option. Send CMS certificates, too. (Addressbook::update_key_o): Fix mem leak of user_props on error. Add handling for CMS / SMIME. (Addressbook::edit_key_o): Add handling for CMS. (Addressbook::check_o): Add handling for CMS. * src/addressbook.h (callback_args_t): Extend for cms. * src/cryptcontroller.cpp (CryptController::resolve_keys): Add overrides and args for SMIME. * src/keycache.cpp (filter_chain): New. Helper to filter non leaf certificates. (do_update, getOverrides, onAddrBookImportJobDone, importFromAddrBook): Handle S/MIME. * src/keycache.h: Update accordingly.
It is now possible to set both S/MIME and OpenPGP Overrides.
This code handles it. It requires an updates keyadder and
keyresolver from Gpg4win-tools together with the latest
libkleo.
- GnuPG-Bug-Id: T4479