;; GNU Emacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
+;; the Free Software Foundation; either version 3, or (at your option)
;; any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;;; Code:
+;; For Emacs < 22.2.
+(eval-and-compile
+ (unless (fboundp 'declare-function) (defmacro declare-function (&rest r))))
+
(eval-when-compile
(require 'cl)
(require 'mm-util))
(autoload 'quoted-printable-decode-region "qp")
(autoload 'quoted-printable-encode-region "qp")
+(autoload 'mm-decode-content-transfer-encoding "mm-bodies")
+(autoload 'mm-encode-content-transfer-encoding "mm-bodies")
+(autoload 'message-options-get "message")
+(autoload 'message-options-set "message")
+
(defvar mml1991-use mml2015-use
"The package used for PGP.")
(insert-buffer-substring signature)
(goto-char (point-max)))))
+(declare-function mc-encrypt-generic "ext:mc-toplev"
+ (&optional recipients scheme start end from sign))
+
(defun mml1991-mailcrypt-encrypt (cont &optional sign)
(let ((text (current-buffer))
(mc-pgp-always-sign
(eval-and-compile
(autoload 'gpg-sign-cleartext "gpg"))
+(declare-function gpg-sign-encrypt "ext:gpg"
+ (plaintext ciphertext result recipients &optional
+ passphrase sign-with-key armor textmode))
+(declare-function gpg-encrypt "ext:gpg"
+ (plaintext ciphertext result recipients &optional
+ passphrase armor textmode))
+
(defun mml1991-gpg-sign (cont)
(let ((text (current-buffer))
headers signature
;; pgg wrapper
-(eval-when-compile
- (defvar pgg-default-user-id)
- (defvar pgg-errors-buffer)
- (defvar pgg-output-buffer))
+(defvar pgg-default-user-id)
+(defvar pgg-errors-buffer)
+(defvar pgg-output-buffer)
(defun mml1991-pgg-sign (cont)
(let ((pgg-text-mode t)
;; epg wrapper
-(eval-and-compile
- (autoload 'epg-make-context "epg"))
+(defvar epg-user-id-alist)
+(defvar password-cache-expiry)
-(eval-when-compile
- (defvar epg-user-id-alist)
+(eval-and-compile
+ (autoload 'epg-make-context "epg")
(autoload 'epg-passphrase-callback-function "epg")
(autoload 'epa-select-keys "epa")
(autoload 'epg-list-keys "epg")
(autoload 'epg-configuration "epg-config")
(autoload 'epg-expand-group "epg-config"))
-(eval-when-compile
- (defvar password-cache-expiry)
- (autoload 'password-read "password")
- (autoload 'password-cache-add "password")
- (autoload 'password-cache-remove "password"))
-
(defvar mml1991-epg-secret-key-id-list nil)
(defun mml1991-epg-passphrase-callback (context key-id ignore)