* epg.el (epg-status-GET_HIDDEN): Don't pass KEY-ID to
[elisp/epg.git] / epa-file.el
index efd44fc..86af182 100644 (file)
@@ -39,8 +39,8 @@
   
 (defvar epa-file-passphrase-alist nil)
 
-(defun epa-file-passphrase-callback-function (key-id file)
-  (if (eq key-id 'SYM)
+(defun epa-file-passphrase-callback-function (file)
+  (if (eq epg-key-id 'SYM)
       (let ((entry (assoc file epa-file-passphrase-alist))
            passphrase)
        (or (copy-sequence (cdr entry))
                (setq entry (list file)
                      epa-file-passphrase-alist (cons entry
                                                 epa-file-passphrase-alist)))
-             (setq passphrase (epg-passphrase-callback-function key-id nil))
+             (setq passphrase (epg-passphrase-callback-function nil))
              (setcdr entry (copy-sequence passphrase))
              passphrase)))
-    (epg-passphrase-callback-function key-id nil)))
+    (epg-passphrase-callback-function nil)))
 
 (defun epa-file-handler (operation &rest args)
   (save-match-data
        (setq string
              (epg-encrypt-string
               context
-              (encode-coding-string (buffer-string) coding-system)
+              (if (stringp start)
+                  (encode-coding-string start coding-system)
+                (encode-coding-string (buffer-substring start end)
+                                      coding-system))
               (mapcar (lambda (key)
                         (epg-sub-key-id (car (epg-key-sub-key-list key))))
                       (unless (assoc file epa-file-passphrase-alist)