Diffusion GpgOL ae06defe99fc

Rebuild WKS Confirmation mail to pass it to gpg

Authored by aheinecke on Feb 6 2020, 3:54 PM.

Description

Rebuild WKS Confirmation mail to pass it to gpg

* src/common-indep.h (header_info_s): Declare new struct.
* src/mail.cpp (Mail::preProcessMessage_m): Parse headers for
unencrypted messages.
(Mail::decryptVerify): Parse headers for encrypted mails.
(Mail::parseHeaders_m): New helper to parse headers.
(Mail::buildProtectedHeaders_o): New.
(Mail::setProtectedHeaders): New.
(Mail::protectedHeaders, Mail::headerInfo): New accessors.
* src/mapihelp.cpp (ac_get_value): Fix some dbg output.
(mapi_get_header_info): Change to use header_info_s.
* src/mapihelp.h: Update accordingly.
* src/mimemaker.cpp, src/mimemaker.h (utf8_to_rfc2047b): Make
public.
* src/mimemaker.h: Add missing include.
* src/oomhelp.cpp (try_resolve_group): Add name to recipient.
(get_oom_recipients_with_addrEntry): Add name.
* src/Recipient.cpp, src/Recipient.h: Add name and displayName
handling.
* src/wks-helper.cpp (WKSHelper::handle_confirmation_read):
Rebuild mime structure for WKS Mails.

This commit mixes in some infrastructure stuff regarding
recipients and protected headers which was developed
with this. To keep the code compiling it is mixed
in here but does not do much yet.

The main part in mapihelp and mimemaker and wks-helper
is to rebuild the mime structure of the Mail when
we pass it to gpg-wks-client. This became necessary
as the gpg-wks-client nowadays does mime parsing
and not only hands the encrypted message to
GnuPG who ignored all the mimeness.

Details