(eval-when-compile (require 'hmac-def))
(require 'hex-util) ; (decode-hex-string STRING)
-(require 'sha1) ; expects (sha1-binary STRING)
+(require 'sha1) ; expects (sha1 STRING)
-;;; (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)