:type 'boolean
:group 'epa-file)
+(defvar epa-file-encrypt-to nil
+ "*Recipient(s) used for encrypting files.
+May either be a string or a list of strings.")
+
+;;;###autoload
+(put 'epa-file-encrypt-to 'safe-local-variable
+ (lambda (val)
+ (or (stringp val)
+ (and (listp val)
+ (catch 'safe
+ (mapc (lambda (elt)
+ (unless (stringp elt)
+ (throw 'safe nil)))
+ val)
+ t)))))
+
(defvar epa-file-handler
(cons epa-file-name-regexp 'epa-file-handler))
(defvar epa-file-passphrase-alist nil)
+(if (fboundp 'encode-coding-string)
+ (defalias 'epa-file--encode-coding-string 'encode-coding-string)
+ (defalias 'epa-file--encode-coding-string 'identity))
+
+(if (fboundp 'decode-coding-string)
+ (defalias 'epa-file--decode-coding-string 'decode-coding-string)
+ (defalias 'epa-file--decode-coding-string 'identity))
+
(defun epa-file-passphrase-callback-function (context key-id file)
(if (and epa-file-cache-passphrase-for-symmetric-encryption
(eq key-id 'SYM))
(point-min) (point-max)
(substring file 0 (string-match epa-file-name-regexp file))
visit beg end replace)))
- (insert (decode-coding-string string (or coding-system-for-read
- 'undecided)))))
+ (insert (epa-file--decode-coding-string string (or coding-system-for-read
+ 'undecided)))))
(defvar last-coding-system-used)
(defun epa-file-insert-file-contents (file &optional visit beg end replace)
(epg-encrypt-string
context
(if (stringp start)
- (encode-coding-string start coding-system)
- (encode-coding-string (buffer-substring start end)
- coding-system))
+ (epa-file--encode-coding-string start coding-system)
+ (epa-file--encode-coding-string (buffer-substring start end)
+ coding-system))
(unless (assoc file epa-file-passphrase-alist)
(epa-select-keys
context
"Select recipents for encryption.
-If no one is selected, symmetric encryption will be performed. "))))
+If no one is selected, symmetric encryption will be performed. "
+ (cond
+ ((listp epa-file-encrypt-to) epa-file-encrypt-to)
+ ((stringp epa-file-encrypt-to) (list epa-file-encrypt-to)))))))
(error
(if (setq entry (assoc file epa-file-passphrase-alist))
(setcdr entry nil))