* Undo the last changes.
authoryamaoka <yamaoka>
Mon, 22 Mar 1999 23:23:01 +0000 (23:23 +0000)
committeryamaoka <yamaoka>
Mon, 22 Mar 1999 23:23:01 +0000 (23:23 +0000)
ChangeLog
NEWS
README.en
mime-edit.el
mime-mc.el
mime-pgp.el
semi-def.el
semi-setup.el

index 7c31dcf..ec63cd9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,49 +1,3 @@
-1999-03-19  Katsumi Yamaoka   <yamaoka@jpl.org>
-
-       * NEWS, README.en: Update for PGP 5.0i and GnuPG support.
-
-       * semi-setup.el (TopLevel): If Mailcrypt module has beed installed,
-       autoload "mime-pgp" for `mime-pgp-setversion' and add the function
-       for working `mc-setversion' together with `mime-pgp-setversion' to
-       `mime-pgp-setversion-hook'.
-
-       * semi-def.el (TopLevel): Autoload "mc-pgp5" and "mc-gpg".
-       (pgp-function): Modify for extended `pgp-function-alist'.
-       (pgp-function-alist): Extend for supporting PGP 5.0i and GnuPG.
-
-       * mime-pgp.el (TopLevel): Initialize with `mime-pgp-setversion'.
-       (mime-pgp-setversion): New function.
-       (mime-pgp-setversion-hook): New hook.
-
-       (mime-verify-application/pgp-signature): Support PGP 5.0i and
-       GnuPG.
-       (mime-pgp-check-signature): Likewise.
-
-       (mime-pgp-good-signature-post-function-pgp50-us): New function.
-
-       (mime-pgp-key-expected-regexp,
-       mime-pgp-good-signature-post-function,
-       mime-pgp-good-signature-regexp, mime-pgp-default-language,
-       mime-pgp-command): New macros.
-
-       (mime-pgp-key-expected-regexp-alist): Extend for supporting PGP
-       5.0i and GnuPG.
-       (mime-pgp-good-signature-regexp-alist): Likewise.
-
-       (mime-pgp-default-language-alist, mime-pgp-command-alist,
-       mime-pgp-default-scheme): New variables.
-       (mime-pgp-default-language, mime-pgp-command): Abolish variables.
-
-       * mime-mc.el (mime-mc-pgp-encrypt-region): Support PGP 5.0i and
-       GnuPG.
-       (mime-mc-pgp-sign-region): Likewise.
-       (TopLevel): Attempt to load "mc-pgp5" and "mc-gpg".
-
-       * mime-edit.el (mime-edit-encrypt-pgp-mime): Use "gpg" for the
-       prefix string of boundary if GnuPG is used.
-       (TopLevel): Define `mc-default-scheme' for avoiding byte-compile
-       warning.
-
 1999-03-11  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
 
        * mime-edit.el (mime-charset-type-list): Add `tis-620'.
diff --git a/NEWS b/NEWS
index 096b1b7..ad678eb 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,17 +3,6 @@ Copyright (C) 1998,1999 Free Software Foundation, Inc.
 
 * Changes in SEMI 1.13
 
-** PGP 5.0i and GnuPG are now supported for PGP/MIME
-
-A user interface for editing or viewing has never changed.  You can
-select the various PGPGPG commands with `M-x mime-pgp-setversion' or
-to setup your startup file, e.g.:
-
-    (eval-after-load "semi-setup" '(mime-pgp-setversion "gpg"))
-
-Note that Mailcrypt 3.5.2 or later is needed for PGP 5.0i or GnuPG.
-
-
 ** Function `mime-play-entity'
 
 Function `mime-play-entity' was renamed from `mime-raw-play-entity'
index b349f06..62495bb 100644 (file)
--- a/README.en
+++ b/README.en
@@ -44,7 +44,7 @@ Required environment
   19.14.  WEMI also does not support Emacs 19.29 to 19.34, XEmacs
   19.15 or XEmacs 20.2 without mule, but WEMI may work with them.
 
-  WEMI requires APEL (9.11 or later) and FLIM (1.12.5 or later)
+  SEMI requires APEL (9.11 or later) and FLIM (1.12.5 or later)
   package.  Please install them before installing it.  APEL package is
   available at:
 
@@ -54,9 +54,7 @@ Required environment
 
        ftp://ftp.jaist.ac.jp/pub/GNU/elisp/flim/
 
-  PGP/MIME and application/pgp require Mailcrypt or tiny-pgp package.
-  In addition, if you want to use PGP 5.0i or GnuPG for PGP/MIME, it
-  is needed that the version of Mailcrypt package is 3.5.2 or later.
+  PGP/MIME and application/pgp require mailcrypt or tiny-pgp package.
 
 
 Installation
index b0555cb..0c04b97 100644 (file)
 (require 'alist)
 (require 'invisible)
 
-;; Avoid byte-compile warning.
-(defvar mc-default-scheme)
-
 
 ;;; @ version
 ;;;
@@ -1800,7 +1797,7 @@ Parameter must be '(PROMPT CHOICE1 (CHOISE2 ...))."
                (mime-edit-translate-region beg end boundary))
               (ctype    (car ret))
               (encoding (nth 1 ret))
-              pgp-boundary)
+              (pgp-boundary (concat "pgp-" boundary)))
          (goto-char beg)
          (insert header)
          (insert (format "Content-Type: %s\n" ctype))
@@ -1812,12 +1809,6 @@ Parameter must be '(PROMPT CHOICE1 (CHOISE2 ...))."
                       recipients (point-min) (point-max) from)
              (throw 'mime-edit-error 'pgp-error)
              )
-         (setq pgp-boundary
-               (format "%s-%s"
-                       (if (eq 'mc-scheme-gpg mc-default-scheme)
-                           "gpg"
-                         "pgp")
-                       boundary))
          (goto-char beg)
          (insert (format "--[[multipart/encrypted;
  boundary=\"%s\";
index 3c4a594..7e5cb26 100644 (file)
@@ -1,10 +1,9 @@
 ;;; mime-mc.el --- Mailcrypt interface for SEMI
 
-;; Copyright (C) 1996,1997,1998,1999 MORIOKA Tomohiko
+;; Copyright (C) 1996,1997,1998 MORIOKA Tomohiko
 
 ;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
-;;         Katsumi Yamaoka  <yamaoka@jpl.org>
-;; Keywords: PGP, GnuPG, security, MIME, multimedia, mail, news
+;; Keywords: PGP, security, MIME, multimedia, mail, news
 
 ;; This file is part of SEMI (Secure Emacs MIME Interface).
 
 ;;; Code:
 
 (require 'mailcrypt)
-(eval-and-compile
-  (load "mc-pgp")
-  (load "mc-pgp5" t)
-  (load "mc-gpg" t)
-  )
+(eval-and-compile (load "mc-pgp"))
 
 (defun mime-mc-pgp-generic-parser (result)
   (let ((ret (mc-pgp-generic-parser result)))
@@ -109,71 +104,32 @@ Content-Transfer-Encoding: 7bit
       (or buffer (null mybuf) (kill-buffer mybuf)))))
 
 (defun mime-mc-pgp-sign-region (start end &optional id unclear boundary)
+  ;; (if (not (boundp 'mc-pgp-user-id))
+  ;;     (load "mc-pgp")
+  ;;   )
   (let ((process-environment process-environment)
        (buffer (get-buffer-create mc-buffer-name))
+       passwd args key
        (parser (function mc-pgp-generic-parser))
-       pgp-path key args prompt passwd hash-function)
-    (cond
-     ((eq 'mc-scheme-gpg mc-default-scheme)
-      (setq pgp-path mc-gpg-path
-           key (mc-gpg-lookup-key (or id mc-gpg-user-id))
-           args (delq nil
-                      (nconc
-                       (if mc-gpg-comment
-                           (list "--comment" (format "%s" mc-gpg-comment)))
-                       (list
-                        (if boundary
-                            "--detach-sign"
-                          (if unclear
-                              "--sign"
-                            "--clearsign"))
-                        "--armor" "--batch" "--textmode" "--verbose"
-                        "--passphrase-fd" "0" "--local-user" (cdr key))))
-           prompt (format "GnuPG passphrase for %s (%s): "
-                          (car key) (cdr key))
-           hash-function 'sha1)
-      (if (and boundary
-              (string-match "^pgp-" boundary))
-         (setq boundary
-               (concat "gpg-" (substring boundary (match-end 0))))
-       ))
-     ((eq 'mc-scheme-pgp50 mc-default-scheme)
-      (setq pgp-path mc-pgp50-pgps-path
-           key (mc-pgp50-lookup-key (or id mc-pgp50-user-id))
-           args (delq nil
-                      (list
-                       (if mc-pgp50-comment
-                           (format "+comment=%s" mc-pgp50-comment))
-                       (if boundary
-                           "-fbat"
-                         "-fat")
-                       "+verbose=1" "+language=us"
-                       (format "+clearsig=%s" (if unclear "off" "on"))
-                       "+batchmode" "-u" (cdr key)))
-           prompt (format "PGP passphrase for %s (%s): "
-                          (car key) (cdr key))
-           hash-function 'md5)
-      (setenv "PGPPASSFD" "0")
+       (pgp-path mc-pgp-path)
+       )
+    (setq key (mc-pgp-lookup-key (or id mc-pgp-user-id)))
+    (setq passwd
+         (mc-activate-passwd
+          (cdr key)
+          (format "PGP passphrase for %s (%s): " (car key) (cdr key))))
+    (setenv "PGPPASSFD" "0")
+    (setq args
+         (cons
+          (if boundary
+              "-fbast"
+            "-fast")
+          (list "+verbose=1" "+language=en"
+                (format "+clearsig=%s" (if unclear "off" "on"))
+                "+batchmode" "-u" (cdr key))))
+    (if mc-pgp-comment
+       (setq args (cons (format "+comment=%s" mc-pgp-comment) args))
       )
-     (t
-      (setq pgp-path mc-pgp-path
-           key (mc-pgp-lookup-key (or id mc-pgp-user-id))
-           args (delq nil
-                      (list
-                       (if mc-pgp-comment
-                           (format "+comment=%s" mc-pgp-comment))
-                       (if boundary
-                           "-fbast"
-                         "-fast")
-                       "+verbose=1" "+language=en"
-                       (format "+clearsig=%s" (if unclear "off" "on"))
-                       "+batchmode" "-u" (cdr key)))
-           prompt (format "PGP passphrase for %s (%s): "
-                          (car key) (cdr key))
-           hash-function 'md5)
-      (setenv "PGPPASSFD" "0")
-      ))
-    (setq passwd (mc-activate-passwd (cdr key) prompt))
     (message "Signing as %s ..." (car key))
     (if (mime-mc-process-region
         start end passwd pgp-path args parser buffer boundary)
@@ -184,8 +140,7 @@ Content-Transfer-Encoding: 7bit
                (insert
                 (format "\
 --[[multipart/signed; protocol=\"application/pgp-signature\";
- boundary=\"%s\"; micalg=pgp-%s][7bit]]\n"
-                        boundary hash-function))
+ boundary=\"%s\"; micalg=pgp-md5][7bit]]\n" boundary))
                ))
          (message "Signing as %s ... Done." (car key))
          t)
@@ -194,16 +149,10 @@ Content-Transfer-Encoding: 7bit
 (defun mime-mc-pgp-encrypt-region (recipients start end &optional id sign)
   (let ((mc-pgp-always-sign (if (eq sign 'maybe)
                                mc-pgp-always-sign
-                             'never))
-       (function (cond ((eq 'mc-scheme-gpg mc-default-scheme)
-                        'mc-gpg-encrypt-region)
-                       ((eq 'mc-scheme-pgp50 mc-default-scheme)
-                        'mc-pgp50-encrypt-region)
-                       (t
-                        'mc-pgp-encrypt-region))))
-    (funcall function
-            (mc-split "\\([ \t\n]*,[ \t\n]*\\)+" recipients)
-            start end id nil)
+                             'never)))
+    (mc-pgp-encrypt-region
+     (mc-split "\\([ \t\n]*,[ \t\n]*\\)+" recipients)
+     start end id nil)
     ))
 
                
index 8df1246..fd0203a 100644 (file)
@@ -1,12 +1,11 @@
-;;; mime-pgp.el --- mime-view internal methods for either PGP or GnuPG.
+;;; mime-pgp.el --- mime-view internal methods for PGP.
 
 ;; Copyright (C) 1995,1996,1997,1998,1999 MORIOKA Tomohiko
 
 ;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
-;;         Katsumi Yamaoka  <yamaoka@jpl.org>
 ;; Created: 1995/12/7
 ;;     Renamed: 1997/2/27 from tm-pgp.el
-;; Keywords: PGP, GnuPG, security, MIME, multimedia, mail, news
+;; Keywords: PGP, security, MIME, multimedia, mail, news
 
 ;; This file is part of SEMI (Secure Emacs MIME Interface).
 
@@ -31,9 +30,9 @@
 
 ;;     [security-multipart] RFC 1847: "Security Multiparts for MIME:
 ;;         Multipart/Signed and Multipart/Encrypted" by
-;;         Jim Galvin <galvin@tis.com>, Sandy Murphy <sandy@tis.com>,
+;;          Jim Galvin <galvin@tis.com>, Sandy Murphy <sandy@tis.com>,
 ;;         Steve Crocker <crocker@cybercash.com> and
-;;         Ned Freed <ned@innosoft.com> (1995/10)
+;;          Ned Freed <ned@innosoft.com> (1995/10)
 
 ;;     [PGP/MIME] RFC 2015: "MIME Security with Pretty Good Privacy
 ;;         (PGP)" by Michael Elkins <elkins@aero.org> (1996/6)
 ;;;
 ;;; It is based on RFC 2015 (PGP/MIME).
 
-(defvar mime-pgp-default-scheme 'pgp
-  "*Default encryption scheme to use.  See also `mime-pgp-command-alist'
-for valid schemes.")
+(defvar mime-pgp-command "pgp"
+  "*Name of the PGP command.")
 
-(defvar mime-pgp-command-alist '((gpg   . "gpg")
-                                (pgp50 . "pgp")
-                                (pgp   . "pgp"))
-  "*Alist of the corresponding schemes to the name of the commands.
-Each element looks like (SCHEME . COMMAND).  Valid SCHEMEs are:
-
-   gpg   - GnuPG.
-   pgp50 - PGP version 5.0i.
-   pgp   - PGP version 2.6.
-
-COMMAND for `pgp50' must *NOT* have a suffix, like neither \"pgpe\", \"pgpk\",
-\"pgps\" nor \"pgpv\".")
-
-(defvar mime-pgp-default-language-alist nil
-  "*Alist of the corresponding schemes to the symbols of languages.
-It should be ISO 639 2 letter language code such as en, ja, ...  Each
-element looks like (SCHEME . SYMBOL).  Also see `mime-pgp-command-alist'
-for valid SCHEMEs.")
+(defvar mime-pgp-default-language 'en
+  "*Symbol of language for pgp.
+It should be ISO 639 2 letter language code such as en, ja, ...")
 
 (defvar mime-pgp-good-signature-regexp-alist
-  '((gpg
-     (nil "Good signature from.*$")
-     )
-    (pgp50
-     (us "Good signature made .* by key:$"
-        mime-pgp-good-signature-post-function-pgp50-us)
-     )
-    (pgp
-     (en "Good signature from user.*$")
-     ))
-  "Alist of the scheme vs corresponding languages to regexps for detecting
-``Good signature''.  The optional symbol of the post processing function
-for arranging the output message can be specified.  It will be called just
-after re-search is done successfully, and it is expected that the function
-returns a string for messaging.")
+  '((en . "Good signature from user.*$"))
+  "Alist of language vs regexp to detect ``Good signature''.")
 
 (defvar mime-pgp-key-expected-regexp-alist
-  '((gpg
-     (nil
-      "key ID \\(\\S +\\)\ngpg: Can't check signature: public key not found")
-     )
-    (pgp50
-     (us "Signature by unknown keyid: 0x\\(\\S +\\)")
-     )
-    (pgp
-     (en "Key matching expected Key ID \\(\\S +\\) not found")
-     ))
-  "Alist of the scheme vs corresponding languages to regexps for detecting
-``Key expected''.")
-
-(defmacro mime-pgp-command (&optional suffix)
-  "Return a suitable command.  SUFFIX should be either \"e\", \"k\", \"s\"
-or \"v\" for choosing a command of PGP 5.0i."
-  (` (let ((command (cdr (assq
-                         mime-pgp-default-scheme mime-pgp-command-alist))))
-       (if (and command
-               (progn
-                 (if (eq 'pgp50 mime-pgp-default-scheme)
-                     (setq command (concat command (, suffix))))
-                 (exec-installed-p command)))
-          command
-        (error "Please specify the valid command name for `%s'."
-               (or mime-pgp-default-scheme 'mime-pgp-default-scheme))))))
-
-(defmacro mime-pgp-default-language ()
-  "Return a symbol of language."
-  '(cond ((eq 'gpg mime-pgp-default-scheme)
-         nil)
-        ((eq 'pgp50 mime-pgp-default-scheme)
-         (or (cdr (assq mime-pgp-default-scheme
-                        mime-pgp-default-language-alist))
-             'us))
-        (t
-         (or (cdr (assq mime-pgp-default-scheme
-                        mime-pgp-default-language-alist))
-             'en))))
-
-(defmacro mime-pgp-good-signature-regexp ()
-  "Return a regexp to detect ``Good signature''."
-  '(nth 1
-       (assq
-        (mime-pgp-default-language)
-        (cdr
-         (assq
-          mime-pgp-default-scheme mime-pgp-good-signature-regexp-alist)))))
-
-(defmacro mime-pgp-good-signature-post-function ()
-  "Return a post processing function for arranging the message for
-``Good signature''."
-  '(nth 2
-       (assq
-        (mime-pgp-default-language)
-        (cdr
-         (assq
-          mime-pgp-default-scheme mime-pgp-good-signature-regexp-alist)))))
-
-(defmacro mime-pgp-key-expected-regexp ()
-  "Return a regexp to detect ``Key expected''."
-  '(nth 1
-       (assq
-        (mime-pgp-default-language)
-        (cdr
-         (assq
-          mime-pgp-default-scheme mime-pgp-key-expected-regexp-alist)))))
+  '((en . "Key matching expected Key ID \\(\\S +\\) not found"))
+  "Alist of language vs regexp to detect ``Key expected''.")
 
 (defun mime-pgp-check-signature (output-buffer orig-file)
   (save-excursion
     (set-buffer output-buffer)
-    (erase-buffer)
-    (setq truncate-lines t))
-  (let* ((lang (mime-pgp-default-language))
-        (command (mime-pgp-command "v"))
-        (args (cond ((eq 'gpg mime-pgp-default-scheme)
-                     (list "--verify" (concat orig-file ".sig"))
-                     )
-                    ((eq 'pgp50 mime-pgp-default-scheme)
-                     (list "+batchmode=1"
-                           (format "+language=%s" lang)
-                           (concat orig-file ".sig"))
-                     )
-                    ((eq 'pgp mime-pgp-default-scheme)
-                     (list (format "+language=%s" lang) orig-file))
-                    ))
-        (regexp (mime-pgp-good-signature-regexp))
-        (post-function (mime-pgp-good-signature-post-function))
-        pgp-id)
-    (if (zerop (apply 'call-process-region
-                     (point-min) (point-max) command nil output-buffer nil
-                     args))
+    (erase-buffer))
+  (let* ((lang (or mime-pgp-default-language 'en))
+        (status (call-process-region (point-min)(point-max)
+                                     mime-pgp-command
+                                     nil output-buffer nil
+                                     orig-file (format "+language=%s" lang)))
+        (regexp (cdr (assq lang mime-pgp-good-signature-regexp-alist))))
+    (if (= status 0)
        (save-excursion
          (set-buffer output-buffer)
          (goto-char (point-min))
-         (cond
-          ((not (stringp regexp))
-           (message "Please specify right regexp for specified language")
-           )
-          ((re-search-forward regexp nil t)
-           (message (if post-function
-                        (funcall post-function)
-                      (buffer-substring (match-beginning 0) (match-end 0))))
-           (goto-char (point-min))
-           )
-          ;; PGP 5.0i always returns 0, so we should attempt to fetch.
-          ((eq 'pgp50 mime-pgp-default-scheme)
-           (if (not (stringp (setq regexp (mime-pgp-key-expected-regexp))))
-               (message "Please specify right regexp for specified language")
-             (if (re-search-forward regexp nil t)
-                 (progn
-                   (setq pgp-id
-                         (concat "0x" (buffer-substring-no-properties
-                                       (match-beginning 1)
-                                       (match-end 1))))
-                   (if (and
-                        pgp-id
-                        (y-or-n-p
-                         (format "Key %s not found; attempt to fetch? "
-                                 pgp-id)
-                         ))
-                       (progn
-                         (funcall (pgp-function 'fetch-key) (cons nil pgp-id))
-                         (mime-pgp-check-signature mime-echo-buffer-name
-                                                   orig-file)
-                         )
-                     (message "Bad signature")
-                     ))
-               (message "Bad signature")
-               ))
-           )
-          (t
-           (message "Bad signature")
-           ))
-         )
-      (message "Bad signature")
-      nil)))
+         (message
+          (cond ((not (stringp regexp))
+                 "Please specify right regexp for specified language")
+                ((re-search-forward regexp nil t)
+                 (buffer-substring (match-beginning 0) (match-end 0)))
+                (t "Bad signature")))
+         ))))
 
 (defun mime-verify-application/pgp-signature (entity situation)
   "Internal method to check PGP/MIME signature."
@@ -311,61 +168,39 @@ or \"v\" for choosing a command of PGP 5.0i."
     (mime-write-entity orig-entity orig-file)
     (save-excursion (mime-show-echo-buffer))
     (mime-write-entity-content entity sig-file)
-    (if (mime-pgp-check-signature mime-echo-buffer-name orig-file)
-       (let ((other-window-scroll-buffer mime-echo-buffer-name))
-         (scroll-other-window
-          (cdr (assq mime-pgp-default-scheme
-                     '((gpg . 5) (pgp50 . 1) (pgp . 10)))))
-         )
-      (if (eq 'pgp mime-pgp-default-scheme)
+    (or (mime-pgp-check-signature mime-echo-buffer-name orig-file)
+       (let (pgp-id)
          (save-excursion
            (set-buffer mime-echo-buffer-name)
            (goto-char (point-min))
-           (if (search-forward "\C-g" nil t)
-               (goto-char (match-beginning 0))
-             (forward-line 7))
-           (set-window-start
-            (get-buffer-window mime-echo-buffer-name)
-            (point))
-           )
-       (let ((other-window-scroll-buffer mime-echo-buffer-name))
-         (scroll-other-window
-          (cdr (assq mime-pgp-default-scheme '((gpg . 5) (pgp50 . 1)))))
-         ))
-      (let (pgp-id)
-       (save-excursion
-         (set-buffer mime-echo-buffer-name)
-         (goto-char (point-min))
-         (let ((regexp (mime-pgp-key-expected-regexp)))
-           (cond
-            ((not (stringp regexp))
-             (message "Please specify right regexp for specified language")
-             )
-            ((re-search-forward regexp nil t)
-             (setq pgp-id (concat "0x" (buffer-substring-no-properties
+           (let ((regexp (cdr (assq (or mime-pgp-default-language 'en)
+                                    mime-pgp-key-expected-regexp-alist))))
+             (cond ((not (stringp regexp))
+                    (message
+                     "Please specify right regexp for specified language")
+                    )
+                   ((re-search-forward regexp nil t)
+                    (setq pgp-id
+                          (concat "0x" (buffer-substring-no-properties
                                         (match-beginning 1)
                                         (match-end 1))))
-             ))))
-       (if (and pgp-id
-                (prog1
-                    (y-or-n-p
-                     (format "Key %s not found; attempt to fetch? " pgp-id))
-                  (message ""))
-                )
-           (progn
-             (funcall (pgp-function 'fetch-key) (cons nil pgp-id))
-             (mime-pgp-check-signature mime-echo-buffer-name orig-file)
-             )
-         )))
+                    ))))
+         (if (and pgp-id
+                  (y-or-n-p
+                   (format "Key %s not found; attempt to fetch? " pgp-id))
+                  )
+             (progn
+               (funcall (pgp-function 'fetch-key) (cons nil pgp-id))
+               (mime-pgp-check-signature mime-echo-buffer-name orig-file)
+               ))
+         ))
+    (let ((other-window-scroll-buffer mime-echo-buffer-name))
+      (scroll-other-window 8)
+      )
     (delete-file orig-file)
     (delete-file sig-file)
     ))
 
-(defun mime-pgp-good-signature-post-function-pgp50-us ()
-  (forward-line 2)
-  (looking-at "\\s +\\(.+\\)$")
-  (format "Good signature from %s" (match-string 1)))
-
 
 ;;; @ Internal method for application/pgp-encrypted
 ;;;
@@ -408,49 +243,7 @@ or \"v\" for choosing a command of PGP 5.0i."
     (kill-buffer (current-buffer))
     ))
 
-
-;;; @ Command.
-
-(defvar mime-pgp-setversion-hook nil
-  "*Hook run after the value of `mime-pgp-default-scheme' has been changed.
-It is supposed to be used for working `mc-setversion' together with the
-command `mime-pgp-setversion'.  For the purpose, it will be overridden by
-\"semi-setup\" in default.")
-
-(defun mime-pgp-setversion (&optional version)
-  "Select PGP version or GnuPG."
-  (interactive)
-  (let ((table '(("GnuPG" . gpg)   ("PGP 2.6" . pgp)   ("PGP 5.0i" . pgp50)
-                ("gnupg" . gpg)   ("gpg"     . gpg)
-                ("pgp"   . pgp)   ("pgp2"    . pgp)   ("pgp2.6"   . pgp)
-                ("pgp5"  . pgp50) ("pgp5.0"  . pgp50) ("pgp50"    . pgp50)
-                ("2.6"   . pgp)   ("5.0"     . pgp50)))
-       (msg (interactive-p)))
-    (if msg
-       (setq version
-             (completing-read
-              (format "Select PGP version or GnuPG (currently %s): "
-                      (car (rassq mime-pgp-default-scheme table)))
-              table nil t)
-             ))
-    (if (zerop (length version))
-       (setq msg (and msg "PGP version is not modified."))
-      (setq mime-pgp-default-scheme (cdr (assoc version table))
-           msg (and msg (format "PGP version set to \"%s\"." version)))
-      (run-hooks 'mime-pgp-setversion-hook)
-      )
-    (if msg (message "%s" msg))
-    )
-  mime-pgp-default-scheme)
-
-(mime-pgp-setversion
- (cdr (assq mime-pgp-default-scheme
-           '((gpg   . "GnuPG")
-             (pgp50 . "PGP 5.0i")
-             (pgp   . "PGP 2.6"))
-           )))
-
-
+        
 ;;; @ end
 ;;;
 
index 5bf96a2..33c9a0e 100644 (file)
     ;; for mime-pgp
     (verify            mc-verify                       "mc-toplev")
     (decrypt           mc-decrypt                      "mc-toplev")
-    (fetch-key         mc-pgp-fetch-key                "mc-pgp"
-                       mc-pgp50-fetch-key              "mc-pgp5"
-                       mc-gpg-fetch-key                "mc-gpg")
+    (fetch-key         mc-pgp-fetch-key                "mc-pgp")
     (snarf-keys                mc-snarf-keys                   "mc-toplev")
     ;; for mime-edit
     (mime-sign         mime-mc-pgp-sign-region         "mime-mc")
-    (traditional-sign  mc-pgp-sign-region              "mc-pgp"
-                       mc-pgp50-sign-region            "mc-pgp5"
-                       mc-gpg-sign-region              "mc-gpg")
+    (traditional-sign  mc-pgp-sign-region              "mc-pgp")
     (encrypt           mime-mc-pgp-encrypt-region      "mime-mc")
     (insert-key                mc-insert-public-key            "mc-toplev")
     )
   "Alist of service names vs. corresponding functions and its filenames.
-Each element looks like:
+Each element looks like (SERVICE FUNCTION FILE).
 
-\(SERVICE FUNCTION FILE [PGP5_FUNCTION PGP5_FILE [GPG_FUNCTION GPG_FILE]]).
+SERVICE is a symbol of PGP processing.  It allows `verify', `decrypt',
+`fetch-key', `snarf-keys', `mime-sign', `traditional-sign', `encrypt'
+or `insert-key'.
 
-SERVICE is a symbol of PGP2, PGP5 or GnuPG processing.  It allows `verify',
-`decrypt', `fetch-key', `snarf-keys', `mime-sign', `traditional-sign',
-`encrypt' or `insert-key'.
-
-FUNCTION is a symbol of function to do specified SERVICE.
+Function is a symbol of function to do specified SERVICE.
 
 FILE is string of filename which has definition of corresponding
-FUNCTION.
-
-PGP5_FUNCTION, PGP5_FILE, GPG_FUNCTION and GPG_FILE are similar to
-FUNCTION and FILE, but they will be used for PGP 5.0i or GnuPG.")
+FUNCTION.")
 
 (defmacro pgp-function (method)
   "Return function to do service METHOD."
-  `(let ((elem (assq ,method (symbol-value 'pgp-function-alist))))
-     (require 'mailcrypt)
-     (cond ((eq 'mc-scheme-gpg (symbol-value 'mc-default-scheme))
-           (if (> (length elem) 3)
-               (nth 5 elem)
-             (nth 1 elem))
-           )
-          ((eq 'mc-scheme-pgp50 (symbol-value 'mc-default-scheme))
-           (if (> (length elem) 3)
-               (nth 3 elem)
-             (nth 1 elem))
-           )
-          (t
-           (nth 1 elem)
-           ))))
+  `(cadr (assq ,method (symbol-value 'pgp-function-alist))))
 
 (mapcar (function
-        (lambda (elem)
-          (setq elem (cdr elem))
-          (while elem
-            (autoload (car elem) (nth 1 elem))
-            (setq elem (nthcdr 2 elem)))))
+        (lambda (method)
+          (autoload (cadr method)(nth 2 method))
+          ))
        pgp-function-alist)
 
 
index 168ce71..9928d1e 100644 (file)
@@ -1,6 +1,6 @@
 ;;; semi-setup.el --- setup file for MIME-View.
 
-;; Copyright (C) 1994,1995,1996,1997,1998,1999 Free Software Foundation, Inc.
+;; Copyright (C) 1994,1995,1996,1997,1998 Free Software Foundation, Inc.
 
 ;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
 ;; Keywords: mail, news, MIME, multimedia, multilingual, encoded-word
@@ -85,7 +85,7 @@ it is used as hook to set."
 ;; for PGP
 (defvar mime-setup-enable-pgp
   (module-installed-p 'mailcrypt)
-  "*If it is non-nil, semi-setup sets up to use mime-pgp.")
+  "*If it is non-nil, semi-setup sets uf to use mime-pgp.")
 
 (if mime-setup-enable-pgp
     (eval-after-load "mime-view"
@@ -126,26 +126,6 @@ it is used as hook to set."
         ))
   )
 
-(if mime-setup-enable-pgp
-    (progn
-      (autoload 'mime-pgp-setversion "mime-pgp" nil t)
-      (add-hook
-       'mime-pgp-setversion-hook
-       (function
-       (lambda ()
-         (require 'mailcrypt)
-         (condition-case nil
-             (let ((version
-                    (cdr (assq (symbol-value 'mime-pgp-default-scheme)
-                               '((gpg   . "gpg")
-                                 (pgp50 . "5.0")
-                                 (pgp   . "2.6"))))))
-               (eval (list 'mc-setversion version))
-               )
-           (error nil))
-         )))
-      ))
-
 
 ;;; @ for mime-edit
 ;;;