Hello community,

here is the log from the commit of package enigmail for openSUSE:Factory 
checked in at 2018-05-29 10:48:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/enigmail (Old)
 and      /work/SRC/openSUSE:Factory/.enigmail.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "enigmail"

Tue May 29 10:48:46 2018 rev:26 rq:612612 version:2.0.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/enigmail/enigmail.changes        2018-05-22 
17:02:13.595647951 +0200
+++ /work/SRC/openSUSE:Factory/.enigmail.new/enigmail.changes   2018-05-29 
10:48:58.479515672 +0200
@@ -1,0 +2,10 @@
+Sun May 27 18:03:30 UTC 2018 - [email protected]
+
+- enigmail 2.0.6:
+  * Replies to a partially encrypted message may have revealed
+    protected information - no longer display PGP/MIME message
+    part followed by unencrypted data (bsc#1094781)
+  * Fix signature Spoofing via Inline-PGP in HTML Mails
+  * Fix filter actions forgetting selected mail folder names
+
+-------------------------------------------------------------------

Old:
----
  enigmail-2.0.5.tar.gz
  enigmail-2.0.5.tar.gz.asc

New:
----
  enigmail-2.0.6.tar.gz
  enigmail-2.0.6.tar.gz.asc

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ enigmail.spec ++++++
--- /var/tmp/diff_new_pack.G6hOl1/_old  2018-05-29 10:48:58.911499734 +0200
+++ /var/tmp/diff_new_pack.G6hOl1/_new  2018-05-29 10:48:58.915499587 +0200
@@ -18,7 +18,7 @@
 
 
 Name:           enigmail
-Version:        2.0.5
+Version:        2.0.6
 Release:        0
 Summary:        OpenPGP addon for Thunderbird and SeaMonkey
 License:        MPL-2.0

++++++ enigmail-2.0.5.tar.gz -> enigmail-2.0.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/Makefile new/enigmail/Makefile
--- old/enigmail/Makefile       2018-05-21 17:21:59.000000000 +0200
+++ new/enigmail/Makefile       2018-05-27 11:50:32.000000000 +0200
@@ -3,7 +3,7 @@
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 XPI_MODULE     = enigmail
-XPI_MODULE_VERS = 2.0.5
+XPI_MODULE_VERS = 2.0.6
 
 DEPTH          = .
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/configure new/enigmail/configure
--- old/enigmail/configure      2018-05-21 17:21:59.000000000 +0200
+++ new/enigmail/configure      2018-05-27 11:50:32.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for enigmail 2.0.5.
+# Generated by GNU Autoconf 2.69 for enigmail 2.0.6.
 #
 # Report bugs to <https://www.enigmail.net>.
 #
@@ -579,8 +579,8 @@
 # Identity of this package.
 PACKAGE_NAME='enigmail'
 PACKAGE_TARNAME='enigmail'
-PACKAGE_VERSION='2.0.5'
-PACKAGE_STRING='enigmail 2.0.5'
+PACKAGE_VERSION='2.0.6'
+PACKAGE_STRING='enigmail 2.0.6'
 PACKAGE_BUGREPORT='https://www.enigmail.net'
 PACKAGE_URL=''
 
@@ -1195,7 +1195,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures enigmail 2.0.5 to adapt to many kinds of systems.
+\`configure' configures enigmail 2.0.6 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1261,7 +1261,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of enigmail 2.0.5:";;
+     short | recursive ) echo "Configuration of enigmail 2.0.6:";;
    esac
   cat <<\_ACEOF
 
@@ -1343,7 +1343,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-enigmail configure 2.0.5
+enigmail configure 2.0.6
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1360,7 +1360,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by enigmail $as_me 2.0.5, which was
+It was created by enigmail $as_me 2.0.6, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/configure.ac new/enigmail/configure.ac
--- old/enigmail/configure.ac   2018-05-21 17:21:59.000000000 +0200
+++ new/enigmail/configure.ac   2018-05-27 11:50:32.000000000 +0200
@@ -2,7 +2,7 @@
 AC_PREREQ(2.61)
 min_automake_version="1.10"
 
-AC_INIT([enigmail],[2.0.5], [https://www.enigmail.net])
+AC_INIT([enigmail],[2.0.6], [https://www.enigmail.net])
 
 
 AC_PATH_PROG(PYTHON, "python2")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/package/constants.jsm 
new/enigmail/package/constants.jsm
--- old/enigmail/package/constants.jsm  2018-05-21 17:21:59.000000000 +0200
+++ new/enigmail/package/constants.jsm  2018-05-27 11:50:32.000000000 +0200
@@ -64,6 +64,7 @@
   UI_PGP_MIME: 0x08,
   UI_TEST: 0x10,
   UI_RESTORE_STRICTLY_MIME: 0x20,
+  UI_IGNORE_MDC_ERROR: 0x40, // force decryption, even if we got an MDC error
 
   /* Send message flags */
   SEND_SIGNED: 0x0001, //    1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/package/decryption.jsm 
new/enigmail/package/decryption.jsm
--- old/enigmail/package/decryption.jsm 2018-05-21 17:21:59.000000000 +0200
+++ new/enigmail/package/decryption.jsm 2018-05-27 11:50:32.000000000 +0200
@@ -413,7 +413,7 @@
    *  Decrypts a PGP ciphertext and returns the the plaintext
    *
    *in  @parent a window object
-   *in  @uiFlags see flag options in EnigmailConstants.idl, UI_INTERACTIVE, 
UI_ALLOW_KEY_IMPORT
+   *in  @uiFlags see flag options in EnigmailConstants, UI_INTERACTIVE, 
UI_ALLOW_KEY_IMPORT
    *in  @cipherText a string containing a PGP Block
    *out @signatureObj
    *out @exitCodeObj contains the exit code
@@ -557,7 +557,11 @@
 
     // do not return anything if gpg signales DECRYPTION_FAILED
     // (which could be possible in case of MDC errors)
-    if (retStatusObj.statusFlags & EnigmailConstants.DECRYPTION_FAILED) {
+    if ((uiFlags & EnigmailConstants.UI_IGNORE_MDC_ERROR) &&
+      (retStatusObj.statusFlags & EnigmailConstants.MISSING_MDC)) {
+      EnigmailLog.DEBUG("enigmail.js: Enigmail.decryptMessage: ignoring MDC 
error\n");
+    }
+    else if (retStatusObj.statusFlags & EnigmailConstants.DECRYPTION_FAILED) {
       plainText = "";
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/package/errorHandling.jsm 
new/enigmail/package/errorHandling.jsm
--- old/enigmail/package/errorHandling.jsm      2018-05-21 17:21:59.000000000 
+0200
+++ new/enigmail/package/errorHandling.jsm      2018-05-27 11:50:32.000000000 
+0200
@@ -309,7 +309,7 @@
       c.statusFlags |= EnigmailConstants.DECRYPTION_FAILED; // be sure to fail
       c.flag = EnigmailConstants.MISSING_MDC;
       EnigmailLog.DEBUG("errorHandling.jsm: missing MDC!\n");
-      c.retStatusObj.statusMsg += EnigmailLocale.getString("missingMdcError") 
+ "\n";
+      c.retStatusObj.statusMsg += EnigmailLocale.getString("mdcError") + "\n";
     }
   }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/package/install.rdf 
new/enigmail/package/install.rdf
--- old/enigmail/package/install.rdf    2018-05-21 17:21:59.000000000 +0200
+++ new/enigmail/package/install.rdf    2018-05-27 11:50:32.000000000 +0200
@@ -5,7 +5,7 @@
 
   <Description about="urn:mozilla:install-manifest">
     <em:id>{847b3a00-7ab1-11d4-8f02-006008948af5}</em:id>
-    <em:version>2.0.5</em:version>
+    <em:version>2.0.6</em:version>
     <em:type>2</em:type> <!-- type = extension -->
     <em:bootstrap>true</em:bootstrap>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/package/mime.jsm 
new/enigmail/package/mime.jsm
--- old/enigmail/package/mime.jsm       2018-05-21 17:21:59.000000000 +0200
+++ new/enigmail/package/mime.jsm       2018-05-27 11:50:32.000000000 +0200
@@ -371,7 +371,7 @@
    */
   isRegularMimeStructure: function(mimePartNumber, uriSpec) {
     if (mimePartNumber.length === 0) return true;
-    if (mimePartNumber.search(/^1(\.1)*$/) === 0) return true;
+    if (mimePartNumber === "1") return true;
 
     if (!uriSpec) return true;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/package/mimeDecrypt.jsm 
new/enigmail/package/mimeDecrypt.jsm
--- old/enigmail/package/mimeDecrypt.jsm        2018-05-21 17:21:59.000000000 
+0200
+++ new/enigmail/package/mimeDecrypt.jsm        2018-05-27 11:50:32.000000000 
+0200
@@ -432,9 +432,15 @@
         EnigmailConstants.UI_PGP_MIME,
         this.returnStatus);
 
-      if ((this.returnStatus.statusFlags & 
EnigmailConstants.DECRYPTION_FAILED) ||
-        !(this.returnStatus.statusFlags & EnigmailConstants.DECRYPTION_OKAY)) {
-        this.decryptedData = "";
+      let mdcError = ((this.returnStatus.statusFlags & 
EnigmailConstants.DECRYPTION_FAILED) ||
+        !(this.returnStatus.statusFlags & EnigmailConstants.DECRYPTION_OKAY));
+
+      if (!(this.uri && this.uri.spec.search(/[&?]header=enigmailConvert/) >= 
0)) {
+        // don't return decrypted data if decryption failed (because it's 
likely an MDC error),
+        // unless we are called for permanent decryption
+        if (mdcError) {
+          this.decryptedData = "";
+        }
       }
 
       this.displayStatus();
@@ -448,7 +454,8 @@
       // don't remember the last message if it contains an embedded PGP/MIME 
message
       // to avoid ending up in a loop
       if (this.mimePartNumber === "1" &&
-        this.decryptedData.search(/^Content-Type:[\t 
]+multipart\/encrypted/mi) < 0) {
+        this.decryptedData.search(/^Content-Type:[\t 
]+multipart\/encrypted/mi) < 0 &&
+        !mdcError) {
         LAST_MSG.lastMessageData = this.decryptedData;
         LAST_MSG.lastMessageURI = currMsg;
         LAST_MSG.lastStatus = this.returnStatus;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/package/persistentCrypto.jsm 
new/enigmail/package/persistentCrypto.jsm
--- old/enigmail/package/persistentCrypto.jsm   2018-05-21 17:21:59.000000000 
+0200
+++ new/enigmail/package/persistentCrypto.jsm   2018-05-27 11:50:32.000000000 
+0200
@@ -19,7 +19,6 @@
 Cu.import("resource://enigmail/armor.jsm"); /*global EnigmailArmor: false */
 Cu.import("resource://enigmail/locale.jsm"); /*global EnigmailLocale: false */
 Cu.import("resource://enigmail/execution.jsm"); /*global EnigmailExecution: 
false */
-Cu.import("resource://enigmail/dialog.jsm"); /*global EnigmailDialog: false */
 Cu.import("resource://enigmail/glodaUtils.jsm"); /*global GlodaUtils: false */
 Cu.import("resource:///modules/MailUtils.js"); /*global MailUtils: false */
 Cu.import("resource://enigmail/core.jsm"); /*global EnigmailCore: false */
@@ -42,6 +41,7 @@
 
 const getGpgAgent = EnigmailLazy.loader("enigmail/gpgAgent.jsm", 
"EnigmailGpgAgent");
 const getDecryption = EnigmailLazy.loader("enigmail/decryption.jsm", 
"EnigmailDecryption");
+const getDialog = EnigmailLazy.loader("enigmail/dialog.jsm", "EnigmailDialog");
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
@@ -577,13 +577,17 @@
                 EnigmailLog.DEBUG("persistentCrypto.jsm: decryptAttachment: 
decryption OK\n");
                 exitCode = 0;
               }
+              else if (statusFlagsObj.value & 
(EnigmailConstants.DECRYPTION_FAILED | EnigmailConstants.MISSING_MDC)) {
+                EnigmailLog.DEBUG("persistentCrypto.jsm: decryptAttachment: 
decryption without MDC protection\n");
+                exitCode = 0;
+              }
               else if (statusFlagsObj.value & 
EnigmailConstants.DECRYPTION_FAILED) {
                 EnigmailLog.DEBUG("persistentCrypto.jsm: decryptAttachment: 
decryption failed\n");
                 // since we cannot find out if the user wants to cancel
                 // we should ask
                 let msg = 
EnigmailLocale.getString("converter.decryptAtt.failed", [attachment.name, 
self.subject]);
 
-                if (!EnigmailDialog.confirmDlg(null, msg,
+                if (!getDialog().confirmDlg(null, msg,
                     EnigmailLocale.getString("dlg.button.retry"), 
EnigmailLocale.getString("dlg.button.skip"))) {
                   o.status = STATUS_FAILURE;
                   resolve(o);
@@ -889,7 +893,8 @@
       var signatureObj = {};
       signatureObj.value = "";
 
-      var uiFlags = EnigmailConstants.UI_INTERACTIVE | 
EnigmailConstants.UI_UNVERIFIED_ENC_OK;
+      const uiFlags = EnigmailConstants.UI_INTERACTIVE | 
EnigmailConstants.UI_UNVERIFIED_ENC_OK |
+        EnigmailConstants.UI_IGNORE_MDC_ERROR;
 
       var plaintexts = [];
       var blocks = EnigmailArmor.locateArmoredBlocks(mime.body);
@@ -929,17 +934,20 @@
             keyIdObj, userIdObj, sigDetailsObj, errorMsgObj, 
blockSeparationObj, encToDetailsObj);
           if (!plaintext || plaintext.length === 0) {
             if (statusFlagsObj.value & EnigmailConstants.DISPLAY_MESSAGE) {
-              EnigmailDialog.alert(null, errorMsgObj.value);
+              getDialog().alert(null, errorMsgObj.value);
               this.foundPGP = -1;
               return -1;
             }
 
+            if (statusFlagsObj.value & (EnigmailConstants.DECRYPTION_FAILED | 
EnigmailConstants.MISSING_MDC)) {
+              EnigmailLog.DEBUG("persistentCrypto.jsm: decryptINLINE: no MDC 
protection, decrypting anyway\n");
+            }
             if (statusFlagsObj.value & EnigmailConstants.DECRYPTION_FAILED) {
               // since we cannot find out if the user wants to cancel
               // we should ask
               let msg = 
EnigmailLocale.getString("converter.decryptBody.failed", this.subject);
 
-              if (!EnigmailDialog.confirmDlg(null, msg,
+              if (!getDialog().confirmDlg(null, msg,
                   EnigmailLocale.getString("dlg.button.retry"), 
EnigmailLocale.getString("dlg.button.skip"))) {
                 this.foundPGP = -1;
                 return -1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/ui/content/enigmailFilterEditorOverlay.js 
new/enigmail/ui/content/enigmailFilterEditorOverlay.js
--- old/enigmail/ui/content/enigmailFilterEditorOverlay.js      2018-05-21 
17:21:59.000000000 +0200
+++ new/enigmail/ui/content/enigmailFilterEditorOverlay.js      2018-05-27 
11:50:32.000000000 +0200
@@ -9,6 +9,7 @@
 "use strict";
 
 /* global gActionListOrdered: false, checkActionsReorder: true */
+/* global nsMsgFilterAction: false, gFilterActionStrings: false, 
gFilterActionList: true */
 
 Components.utils.import("resource://enigmail/timer.jsm"); /*global 
EnigmailTimer: false */
 
@@ -16,6 +17,16 @@
 var EnigmailFilterEditor = {
   onLoad: function() {
     let self = this;
+
+    if ("arguments" in window && window.arguments[0]) {
+      let args = window.arguments[0];
+
+      if ("filter" in args) {
+        // editing a filter
+        this.reInitialize(args.filter);
+      }
+    }
+
     // Overwrite the original checkActionsReorder function
     this.enigmail_origCheckActionsReorder = checkActionsReorder;
 
@@ -33,6 +44,26 @@
     EnigmailFilterEditor = undefined;
   },
 
+  reInitialize: function(filter) {
+    while (gFilterActionList.firstChild) {
+      gFilterActionList.removeChild(gFilterActionList.firstChild);
+    }
+
+    let numActions = filter.actionCount;
+    for (let actionIndex = 0; actionIndex < numActions; actionIndex++) {
+      let filterAction = filter.getActionAt(actionIndex);
+
+      var newActionRow = document.createElement('listitem');
+      newActionRow.setAttribute('initialActionIndex', actionIndex);
+      newActionRow.className = 'ruleaction';
+      gFilterActionList.appendChild(newActionRow);
+      newActionRow.setAttribute('value',
+        filterAction.type == nsMsgFilterAction.Custom ?
+        filterAction.customId : gFilterActionStrings[filterAction.type]);
+      newActionRow.setAttribute('onfocus', 'this.storeFocus();');
+    }
+  },
+
   checkMoveAction: function() {
     let dlg = document.getElementById("FilterEditor");
     let acceptButton = dlg.getButton("accept");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enigmail/ui/content/enigmailMessengerOverlay.js 
new/enigmail/ui/content/enigmailMessengerOverlay.js
--- old/enigmail/ui/content/enigmailMessengerOverlay.js 2018-05-21 
17:21:59.000000000 +0200
+++ new/enigmail/ui/content/enigmailMessengerOverlay.js 2018-05-27 
11:50:32.000000000 +0200
@@ -1097,6 +1097,9 @@
         Enigmail.hdrView.displayPepStatus(pEpResult.rating, pEpResult.fpr, 
null, pEpResult.persons);
       }
       else {
+        if ((head.length > 0) || (tail.length > 0)) {
+          statusFlags |= EnigmailConstants.PARTIALLY_PGP;
+        }
         Enigmail.hdrView.updateHdrIcons(exitCode, statusFlags, keyIdObj.value, 
userIdObj.value,
           sigDetailsObj.value,
           errorMsg,



Reply via email to