add iso-8859-14 also
[elisp/semi.git] / pgg-pgp5.el
index fa1b0ee..515ca5a 100644 (file)
@@ -25,6 +25,7 @@
 
 ;;; Code:
 
+(require 'mel) ; binary-to-text-funcall, binary-write-decoded-region
 (eval-when-compile (require 'pgg))
 
 (defgroup pgg-pgp5 ()
@@ -82,9 +83,7 @@ Bourne shell or its equivalent \(not tcsh) is needed for \"2>\"."
            (luna-make-entity 'pgg-scheme-pgp5))))
 
 (defun pgg-pgp5-process-region (start end passphrase program args)
-  (let* ((errors-file-name
-         (concat temporary-file-directory
-                 (make-temp-name "pgg-errors")))
+  (let* ((errors-file-name (make-temp-file "pgg-errors"))
         (args
          (append args
                  pgg-pgp5-extra-args
@@ -104,8 +103,8 @@ Bourne shell or its equivalent \(not tcsh) is needed for \"2>\"."
     (unwind-protect
        (progn
          (setq process
-               (apply #'binary-start-process-shell-command "*PGP*"
-                      output-buffer
+               (apply #'binary-funcall
+                      #'start-process-shell-command "*PGP*" output-buffer
                       program args))
          (set-process-sentinel process #'ignore)
          (when passphrase
@@ -203,14 +202,13 @@ Bourne shell or its equivalent \(not tcsh) is needed for \"2>\"."
 
 (luna-define-method pgg-scheme-verify-region ((scheme pgg-scheme-pgp5)
                                              start end &optional signature)
-  (let* ((basename (expand-file-name "pgg" temporary-file-directory))
-        (orig-file (make-temp-name basename))
+  (let* ((orig-file (make-temp-file "pgg"))
         (args '("+verbose=1" "+batchmode=1" "+language=us"))
         (orig-mode (default-file-modes)))
     (unwind-protect
        (progn
          (set-default-file-modes 448)
-         (binary-write-region start end orig-file))
+         (binary-write-decoded-region start end orig-file))
       (set-default-file-modes orig-mode))
     (when (stringp signature)
       (copy-file signature (setq signature (concat orig-file ".asc")))
@@ -238,8 +236,7 @@ Bourne shell or its equivalent \(not tcsh) is needed for \"2>\"."
 (luna-define-method pgg-scheme-snarf-keys-region ((scheme pgg-scheme-pgp5)
                                                  start end)
   (let* ((pgg-pgp5-user-id (or pgg-pgp5-user-id pgg-default-user-id))
-        (basename (expand-file-name "pgg" temporary-file-directory))
-        (key-file (make-temp-name basename))
+        (key-file (make-temp-file "pgg"))
         (args
          (list "+verbose=1" "+batchmode=1" "+language=us" "-a"
                key-file)))