[git] GpgOL - branch, master, updated. gpgol-2.0.6-117-g0aac05e

by Andre Heinecke cvs at cvs.gnupg.org
Thu Apr 5 11:00:30 CEST 2018


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GnuPG extension for MS Outlook".

The branch, master has been updated
       via  0aac05ee0cfbe8101e9df59f0cd0716fbf84c596 (commit)
       via  cc78a181785c0a2fe363c749d26d5ade959ccca3 (commit)
       via  0aada62ad6d7faa14917860179829cdc5329702d (commit)
       via  bf273a7a67d8571030a57a087365de1d9b494e56 (commit)
       via  5bf8ceeae7d6e76e432218dfa9751168fd2f09c0 (commit)
      from  f79f3379aba5949941c320b6cd2d9a1e95785ca1 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 0aac05ee0cfbe8101e9df59f0cd0716fbf84c596
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Thu Apr 5 10:57:39 2018 +0200

    Disable oom body check for MIME mails
    
    * src/mailitem-events.cpp (EVENT_SINK_INVOKE): Disable
    safety checks.
    
    --
    The safety check added for T3863 triggered too often.
    Even if a Body is found in OOM when we send MIME that
    should not be a problem as the MIME conversion will
    wkill the body.
    
    GnuPG-Bug-Id: T3863
    GnuPG-Bug-Id: T3875

diff --git a/src/mailitem-events.cpp b/src/mailitem-events.cpp
index bc40cc8..ec6d6cc 100644
--- a/src/mailitem-events.cpp
+++ b/src/mailitem-events.cpp
@@ -429,6 +429,19 @@ EVENT_SINK_INVOKE(MailItemEvents)
             {
               if (!m_mail->has_crypted_or_empty_body())
                 {
+/* The safety checks here trigger too often. Somehow for some
+   users the body is not empty after the encryption but when
+   it is sent it is still sent with the crypto content because
+   the encrypted MIME Structure is used because it is
+   correct in MAPI land.
+
+   For safety reasons enabling the checks might be better but
+   until we figure out why for some users the body replacement
+   does not work we have to disable them. Otherwise GpgOL
+   is unusuable for such users. GnuPG-Bug-Id: T3875
+*/
+#define DISABLE_SAFTEY_CHECKS
+#ifndef DISABLE_SAFTEY_CHECKS
                   gpgol_bug (m_mail->get_window (),
                              ERR_WANTS_SEND_MIME_BODY);
                   log_debug ("%s:%s: Message %p mail %p cancelling send mime - "
@@ -437,6 +450,11 @@ EVENT_SINK_INVOKE(MailItemEvents)
                   m_mail->set_crypt_state (Mail::NoCryptMail);
                   *(parms->rgvarg[0].pboolVal) = VARIANT_TRUE;
                   break;
+#else
+                  log_debug ("%s:%s: Message %p mail %p - "
+                             "not encrypted or not empty body detected - MIME.",
+                             SRCNAME, __func__, m_object, m_mail);
+#endif
                 }
               /* Now we adress T3656 if Outlooks internal S/MIME is somehow
                * mixed in (even if it is enabled and then disabled) it might

commit cc78a181785c0a2fe363c749d26d5ade959ccca3
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Thu Apr 5 10:56:29 2018 +0200

    Log body if body was found after crypto
    
    * src/mail.cpp (has_crypt_or_empty_body_oom): Log body in
    very verbose logging mode.
    
    --
    Might help to figure out what goes wrong in:
    GnuPG-Bug-Id: T3875

diff --git a/src/mail.cpp b/src/mail.cpp
index e6b2f1e..bd28cc3 100644
--- a/src/mail.cpp
+++ b/src/mail.cpp
@@ -2569,6 +2569,11 @@ has_crypt_or_empty_body_oom (Mail *mail)
     {
       ret.second = true;
     }
+  else
+    {
+      log_mime_parser ("%s:%s: Body found in %p : \"%s\"",
+                       SRCNAME, __func__, mail, body.c_str ());
+    }
   return ret;
 }
 

commit 0aada62ad6d7faa14917860179829cdc5329702d
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Thu Apr 5 10:55:43 2018 +0200

    Also clear plain body in wipe
    
    * src/mail.cpp (Mail::wipe): Clear body even if clearing
    the HTML Body succeeds.
    
    --
    Might help with:
    GnuPG-Bug-Id: T3875

diff --git a/src/mail.cpp b/src/mail.cpp
index 9d96bb6..e6b2f1e 100644
--- a/src/mail.cpp
+++ b/src/mail.cpp
@@ -1280,6 +1280,10 @@ Mail::wipe (bool force)
         }
       return -1;
     }
+  else
+    {
+      put_oom_string (m_mailitem, "Body", "");
+    }
   m_needs_wipe = false;
   return 0;
 }

commit bf273a7a67d8571030a57a087365de1d9b494e56
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Thu Apr 5 08:44:44 2018 +0200

    Properly handle crypt cancel for inline mails
    
    * src/mailitem-events.cpp (EVENT_SINK_INVOKE): Handle error
    or canceled crypt for inline mails.
    
    --
    Canceling recipients would otherwise show a bug message.
    
    GnuPG-Bug-Id: T3864

diff --git a/src/mailitem-events.cpp b/src/mailitem-events.cpp
index 2a96166..bc40cc8 100644
--- a/src/mailitem-events.cpp
+++ b/src/mailitem-events.cpp
@@ -375,6 +375,15 @@ EVENT_SINK_INVOKE(MailItemEvents)
                 }
               else
                 {
+                  if (m_mail->crypt_state () == Mail::NoCryptMail)
+                    {
+                      // Crypto failed or was canceled
+                      log_debug ("%s:%s: Message %p mail %p cancelling send - "
+                                 "Crypto failed or canceled.",
+                                 SRCNAME, __func__, m_object, m_mail);
+                      *(parms->rgvarg[0].pboolVal) = VARIANT_TRUE;
+                      break;
+                    }
                   // For inline response we can't trigger send programatically
                   // so we do the encryption in sync.
                   if (m_mail->crypt_state () == Mail::NeedsUpdateInOOM)

commit 5bf8ceeae7d6e76e432218dfa9751168fd2f09c0
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Thu Apr 5 08:39:40 2018 +0200

    Don't access listed key on error
    
    * src/parsecontroller.cpp (ParseController::get_ultimate_keys):
    Don't access key data member on error.
    
    --
    A bit cleaner in case key is somehow invalid.

diff --git a/src/parsecontroller.cpp b/src/parsecontroller.cpp
index 484afc2..a4debf5 100644
--- a/src/parsecontroller.cpp
+++ b/src/parsecontroller.cpp
@@ -486,7 +486,7 @@ ParseController::get_ultimate_keys()
   while (!err)
     {
       const auto key = ctx->nextKey(err);
-      if (key.isNull() || err)
+      if (err || key.isNull())
         {
           break;
         }

-----------------------------------------------------------------------

Summary of changes:
 src/mail.cpp            |  9 +++++++++
 src/mailitem-events.cpp | 27 +++++++++++++++++++++++++++
 src/parsecontroller.cpp |  2 +-
 3 files changed, 37 insertions(+), 1 deletion(-)


hooks/post-receive
-- 
GnuPG extension for MS Outlook
http://git.gnupg.org




More information about the Gnupg-commits mailing list