Synch to the flim-1_14 branch.
authoryamaoka <yamaoka>
Thu, 2 Sep 2004 01:25:44 +0000 (01:25 +0000)
committeryamaoka <yamaoka>
Thu, 2 Sep 2004 01:25:44 +0000 (01:25 +0000)
ChangeLog
sha1-dl.el

index 8886f15..e98275f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2004-09-02  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * sha1-dl.el: Don't provide the sha1-dl feature twice.
+       (sha1-region): Allow the optional argument `binary'.
+       (sha1): Ditto.
+
 2004-08-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
 
        * std11.el (std11-wrap-as-quoted-string): Fix function name for
index 4716d4d..5e21dc3 100644 (file)
@@ -1,6 +1,6 @@
 ;;; sha1-dl.el --- SHA1 Secure Hash Algorithm using DL module.
 
-;; Copyright (C) 1999, 2001  Free Software Foundation, Inc.
+;; Copyright (C) 1999, 2001, 2004  Free Software Foundation, Inc.
 
 ;; Author: Shuhei KOBAYASHI <shuhei@aqua.ocn.ne.jp>
 ;; Keywords: SHA1, FIPS 180-1
 ;;; sha1-dl-module provides `sha1-string' and `sha1-binary'.
 (dynamic-call "emacs_sha1_init" sha1-dl-handle)
 
-(defun sha1-region (beg end)
-  (sha1-string (buffer-substring-no-properties beg end)))
+(defun sha1-region (beg end &optional binary)
+  (if binary
+      (sha1-binary (buffer-substring-no-properties beg end))
+    (sha1-string (buffer-substring-no-properties beg end))))
 
-(defun sha1 (object &optional beg end)
+(defun sha1 (object &optional beg end binary)
   "Return the SHA1 (Secure Hash Algorithm) of an object.
 OBJECT is either a string or a buffer.
 Optional arguments BEG and END denote buffer positions for computing the
-hash of a portion of OBJECT."
+hash of a portion of OBJECT.
+If BINARY is non-nil, return a string in binary form."
   (if (stringp object)
-      (sha1-string object)
+      (if binary
+         (sha1-binary object)
+       (sha1-string object))
     (save-excursion
       (set-buffer object)
-      (sha1-region (or beg (point-min)) (or end (point-max))))))
-
-(provide 'sha1-dl)
+      (sha1-region (or beg (point-min)) (or end (point-max)) binary))))
 
 ;;; sha1-dl.el ends here