]> git.eshelyaron.com Git - emacs.git/commitdiff
Merge changes made in Gnus trunk.
authorDaiki Ueno <ueno@unixuser.org>
Mon, 17 Oct 2011 04:29:19 +0000 (04:29 +0000)
committerKatsumi Yamaoka <yamaoka@jpl.org>
Mon, 17 Oct 2011 04:29:19 +0000 (04:29 +0000)
mml2015.el (mml2015-epg-find-usable-key): Skip the whole key if the primary key is marked as disabled.
mml1991.el (mml1991-epg-find-usable-key): Ditto.  Thanks to Christian von Roques <roques@mti.ag>.

lisp/gnus/ChangeLog
lisp/gnus/mml1991.el
lisp/gnus/mml2015.el

index 2fd624e819b0bde3b27b60309416fd3c8fcd183b..cc2568a3647b5c7553f4c2880334035e67b8d933 100644 (file)
@@ -1,3 +1,10 @@
+2011-10-17  Daiki Ueno  <ueno@unixuser.org>
+
+       * mml2015.el (mml2015-epg-find-usable-key): Skip the whole key if the
+       primary key is marked as disabled.
+       * mml1991.el (mml1991-epg-find-usable-key): Ditto.
+       Thanks to Christian von Roques <roques@mti.ag>.
+
 2011-10-11  Andreas Schwab  <schwab@linux-m68k.org>
 
        * html2text.el (html2text-clean-anchor): Check for quotes around
index ad9f95796fe9472b01a4935f2916cb77413347c5..1777a6603198be7f69e71f5baf546f29c1d8edb9 100644 (file)
@@ -282,13 +282,16 @@ Whether the passphrase is cached at all is controlled by
   (catch 'found
     (while keys
       (let ((pointer (epg-key-sub-key-list (car keys))))
-       (while pointer
-         (if (and (memq usage (epg-sub-key-capability (car pointer)))
-                  (not (memq 'disabled (epg-sub-key-capability (car pointer))))
-                  (not (memq (epg-sub-key-validity (car pointer))
-                             '(revoked expired))))
-             (throw 'found (car keys)))
-         (setq pointer (cdr pointer))))
+       ;; The primary key will be marked as disabled, when the entire
+       ;; key is disabled (see 12 Field, Format of colon listings, in
+       ;; gnupg/doc/DETAILS)
+       (unless (memq 'disabled (epg-sub-key-capability (car pointer)))
+         (while pointer
+           (if (and (memq usage (epg-sub-key-capability (car pointer)))
+                    (not (memq (epg-sub-key-validity (car pointer))
+                               '(revoked expired))))
+               (throw 'found (car keys)))
+           (setq pointer (cdr pointer)))))
       (setq keys (cdr keys)))))
 
 ;; XXX: since gpg --list-secret-keys does not return validity of each
index b9310beed588b130117fe479438cdf0527ff6333..028955a8c3330eb75c5cac354a8f89d017993f17 100644 (file)
@@ -788,13 +788,16 @@ If set, it overrides the setting of `mml2015-sign-with-sender'."
   (catch 'found
     (while keys
       (let ((pointer (epg-key-sub-key-list (car keys))))
-       (while pointer
-         (if (and (memq usage (epg-sub-key-capability (car pointer)))
-                  (not (memq 'disabled (epg-sub-key-capability (car pointer))))
-                  (not (memq (epg-sub-key-validity (car pointer))
-                             '(revoked expired))))
-             (throw 'found (car keys)))
-         (setq pointer (cdr pointer))))
+       ;; The primary key will be marked as disabled, when the entire
+       ;; key is disabled (see 12 Field, Format of colon listings, in
+       ;; gnupg/doc/DETAILS)
+       (unless (memq 'disabled (epg-sub-key-capability (car pointer)))
+         (while pointer
+           (if (and (memq usage (epg-sub-key-capability (car pointer)))
+                    (not (memq (epg-sub-key-validity (car pointer))
+                               '(revoked expired))))
+               (throw 'found (car keys)))
+           (setq pointer (cdr pointer)))))
       (setq keys (cdr keys)))))
 
 ;; XXX: since gpg --list-secret-keys does not return validity of each