X-Git-Url: http://cgit.sxemacs.org/?a=blobdiff_plain;f=lisp%2Fpgg-parse.el;h=c7484ddd74705331c7dbc1b2ab7a36ac85858cc0;hb=5beb390633ce1e32cdf319c6ba19926244bbfdf2;hp=dbdb0cbbba14982c392c8b327926048c45286732;hpb=125d88b46ad2efa065f06d5dac37a245b488985a;p=gnus diff --git a/lisp/pgg-parse.el b/lisp/pgg-parse.el index dbdb0cbbb..c7484ddd7 100644 --- a/lisp/pgg-parse.el +++ b/lisp/pgg-parse.el @@ -1,17 +1,19 @@ ;;; pgg-parse.el --- OpenPGP packet parsing -;; Copyright (C) 1999, 2003 Free Software Foundation, Inc. +;; Copyright (C) 1999, 2002-2012 Free Software Foundation, Inc. ;; Author: Daiki Ueno ;; Created: 1999/10/28 ;; Keywords: PGP, OpenPGP, GnuPG +;; Package: pgg +;; Obsolete-since: 24.1 ;; 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 @@ -19,9 +21,7 @@ ;; 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., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. +;; along with GNU Emacs. If not, see . ;;; Commentary: @@ -35,10 +35,13 @@ ;;; Code: -(eval-when-compile (require 'cl)) +(eval-when-compile + ;; For Emacs <22.2 and XEmacs. + (unless (fboundp 'declare-function) (defmacro declare-function (&rest r))) + (require 'cl)) (defgroup pgg-parse () - "OpenPGP packet parsing" + "OpenPGP packet parsing." :group 'pgg) (defcustom pgg-parse-public-key-algorithm-alist @@ -50,13 +53,14 @@ (defcustom pgg-parse-symmetric-key-algorithm-alist '((1 . IDEA) (2 . 3DES) (4 . CAST5) (5 . SAFER-SK128)) - "Alist of the assigned number to the simmetric key algorithm." + "Alist of the assigned number to the symmetric key algorithm." :group 'pgg-parse :type '(repeat (cons (sexp :tag "Number") (sexp :tag "Type")))) (defcustom pgg-parse-hash-algorithm-alist - '((1 . MD5) (2 . SHA1) (3 . RIPEMD160) (5 . MD2)) + '((1 . MD5) (2 . SHA1) (3 . RIPEMD160) (5 . MD2) (8 . SHA256) (9 . SHA384) + (10 . SHA512)) "Alist of the assigned number to the cryptographic hash algorithm." :group 'pgg-parse :type '(repeat @@ -111,7 +115,7 @@ `(mapconcat (lambda (c) (format "%02X" (pgg-char-int c))) ,string "") ;; `(upcase (apply #'format "%02x%02x%02x%02x%02x%02x%02x%02x" - ;; (string-to-int-list ,string))) + ;; (string-to-number-list ,string))) ) (defmacro pgg-parse-time-field (bytes) @@ -134,7 +138,7 @@ (defmacro pgg-read-bytes (nbytes) `(mapcar #'pgg-char-int (pgg-read-bytes-string ,nbytes)) - ;; `(string-to-int-list (pgg-read-bytes-string ,nbytes)) + ;; `(string-to-number-list (pgg-read-bytes-string ,nbytes)) ) (defmacro pgg-read-body-string (ptag) @@ -144,7 +148,7 @@ (defmacro pgg-read-body (ptag) `(mapcar #'pgg-char-int (pgg-read-body-string ,ptag)) - ;; `(string-to-int-list (pgg-read-body-string ,ptag)) + ;; `(string-to-number-list (pgg-read-body-string ,ptag)) ) (defalias 'pgg-skip-bytes 'forward-char) @@ -176,6 +180,8 @@ (repeat)))) (repeat))))) + (defvar pgg-parse-crc24) + (defun pgg-parse-crc24-string (string) (let ((h (vector nil 183 1230 nil nil nil nil nil nil))) (ccl-execute-on-string pgg-parse-crc24 h string) @@ -461,6 +467,10 @@ pgg-parse-public-key-algorithm-alist))) result)) +;; p-d-p only calls this if it is defined, but the compiler does not +;; recognize that. +(declare-function pgg-parse-crc24-string "pgg-parse" (string)) + (defun pgg-decode-packets () (if (re-search-forward "^=\\([A-Za-z0-9+/]\\{4\\}\\)$" nil t) (let ((p (match-beginning 0)) @@ -495,8 +505,8 @@ (defun pgg-parse-armor (string) (with-temp-buffer (buffer-disable-undo) - (if (fboundp 'set-buffer-multibyte) - (set-buffer-multibyte nil)) + (unless (featurep 'xemacs) + (set-buffer-multibyte nil)) (insert string) (pgg-decode-armor-region (point-min)(point)))) @@ -510,5 +520,4 @@ (provide 'pgg-parse) -;;; arch-tag: 16c2eb82-1313-4a7c-a70f-420709b5b43e ;;; pgg-parse.el ends here