;;; mml1991.el --- Old PGP message format (RFC 1991) support for MML
-;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-;; 2005, 2006 Free Software Foundation, Inc.
+;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
+;; 2007, 2008, 2009 Free Software Foundation, Inc.
-;; Author: Sascha Ldecke <sascha@meta-x.de>,
+;; Author: Sascha LΓΌdecke <sascha@meta-x.de>,
;; Simon Josefsson <simon@josefsson.org> (Mailcrypt interface, Gnus glue)
;; Keywords PGP
;; This file is part of GNU Emacs.
-;; GNU Emacs is free software; you can redistribute it and/or modify
+;; 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)
-;; any later version.
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
+;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;;; 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.")
;;; mailcrypt wrapper
-(eval-and-compile
- (autoload 'mc-sign-generic "mc-toplev"))
+(autoload 'mc-sign-generic "mc-toplev")
(defvar mml1991-decrypt-function 'mailcrypt-decrypt)
(defvar mml1991-verify-function 'mailcrypt-verify)
(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
'never))
cipher
(result-buffer (get-buffer-create "*GPG Result*")))
- ;; Strip MIME Content[^ ]: headers since it will be ASCII ARMOURED
+ ;; Strip MIME Content[^ ]: headers since it will be ASCII ARMORED
(goto-char (point-min))
(while (looking-at "^Content[^ ]+:") (forward-line))
(unless (bobp)
;;; gpg wrapper
-(eval-and-compile
- (autoload 'gpg-sign-cleartext "gpg"))
+(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))
(let ((text (current-buffer))
cipher
(result-buffer (get-buffer-create "*GPG Result*")))
- ;; Strip MIME Content[^ ]: headers since it will be ASCII ARMOURED
+ ;; Strip MIME Content[^ ]: headers since it will be ASCII ARMORED
(goto-char (point-min))
(while (looking-at "^Content[^ ]+:") (forward-line))
(unless (bobp)
;; 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)
(let ((cte (save-restriction
(narrow-to-region (point-min) (point))
(mail-fetch-field "content-transfer-encoding"))))
- ;; Strip MIME headers since it will be ASCII armoured.
+ ;; Strip MIME headers since it will be ASCII armored.
(forward-line 1)
(delete-region (point-min) (point))
(when cte
;; epg wrapper
-(eval-and-compile
- (autoload 'epg-make-context "epg"))
-
-(eval-when-compile
- (defvar epg-user-id-alist)
- (autoload 'epg-passphrase-callback-function "epg")
- (autoload 'epa-select-keys "epa")
- (autoload 'epg-list-keys "epg")
- (autoload 'epg-context-set-armor "epg")
- (autoload 'epg-context-set-textmode "epg")
- (autoload 'epg-context-set-signers "epg")
- (autoload 'epg-context-set-passphrase-callback "epg")
- (autoload 'epg-sign-string "epg")
- (autoload 'epg-encrypt-string "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 epg-user-id-alist)
+(defvar password-cache-expiry)
+
+(autoload 'epg-make-context "epg")
+(autoload 'epg-passphrase-callback-function "epg")
+(autoload 'epa-select-keys "epa")
+(autoload 'epg-list-keys "epg")
+(autoload 'epg-context-set-armor "epg")
+(autoload 'epg-context-set-textmode "epg")
+(autoload 'epg-context-set-signers "epg")
+(autoload 'epg-context-set-passphrase-callback "epg")
+(autoload 'epg-sign-string "epg")
+(autoload 'epg-encrypt-string "epg")
+(autoload 'epg-configuration "epg-config")
+(autoload 'epg-expand-group "epg-config")
(defvar mml1991-epg-secret-key-id-list nil)
(let ((cte (save-restriction
(narrow-to-region (point-min) (point))
(mail-fetch-field "content-transfer-encoding"))))
- ;; Strip MIME headers since it will be ASCII armoured.
+ ;; Strip MIME headers since it will be ASCII armored.
(forward-line 1)
(delete-region (point-min) (point))
(when cte
;; coding: iso-8859-1
;; End:
-;;; arch-tag: e542be18-ab28-4393-9b33-97fe9cf30706
+;; arch-tag: e542be18-ab28-4393-9b33-97fe9cf30706
;;; mml1991.el ends here