X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=hmac-sha1.el;h=2e97b2bf15b3e29d967215dc8936c65cd21fb190;hb=49bcccb29c08f5839d010f29632d79dcac01bcbd;hp=6b2beeaf1479caff6f758edcf72c9abe9a83e7ce;hpb=cfbeb2aa70dd2506c32ce4a2e1d232731a93701d;p=elisp%2Fflim.git diff --git a/hmac-sha1.el b/hmac-sha1.el index 6b2beea..2e97b2b 100644 --- a/hmac-sha1.el +++ b/hmac-sha1.el @@ -1,6 +1,6 @@ ;;; hmac-sha1.el --- Compute HMAC-SHA1. -;; Copyright (C) 1999 Shuhei KOBAYASHI +;; Copyright (C) 1999, 2001 Free Software Foundation, Inc. ;; Author: Shuhei KOBAYASHI ;; Keywords: HMAC, RFC 2104, HMAC-SHA1, SHA1, Cancel-Lock @@ -19,8 +19,8 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; see the file COPYING. If not, write to -;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. +;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +;; Boston, MA 02110-1301, USA. ;;; Commentary: @@ -44,6 +44,7 @@ ;; (encode-hex-string ;; (hmac-sha1 "Test With Truncation" (make-string 20 ?\x0c))) ;; => "4c1a03424b55e07fe7f27be1d58bb9324a9a5a04" +;; ;; (encode-hex-string ;; (hmac-sha1-96 "Test With Truncation" (make-string 20 ?\x0c))) ;; => "4c1a03424b55e07fe7f27be1" @@ -66,14 +67,19 @@ (require 'hex-util) ; (decode-hex-string STRING) (require 'sha1) ; expects (sha1 STRING) -;;; For consintency with hmac-md5.el, we define this function here. -(or (fboundp 'sha1-binary) - (defun sha1-binary (string) - "Return the SHA1 of STRING in binary form." - (decode-hex-string (sha1 string)))) +;; To share *.elc files between Emacs w/ and w/o DL patch, +;; this check must be done at load-time. +(cond + ((fboundp 'sha1-binary) + ;; do nothing. + ) + (t + (defun sha1-binary (string) + "Return the SHA1 of STRING in binary form." + (decode-hex-string (sha1 string))))) (define-hmac-function hmac-sha1 sha1-binary 64 20) ; => (hmac-sha1 TEXT KEY) -;; (define-hmac-function hmac-sha1-96 sha1-binary 64 20 96) +(define-hmac-function hmac-sha1-96 sha1-binary 64 20 96) (provide 'hmac-sha1)