(setq ls (cdr ls)))
v))
-(eval-when-compile
- (defmacro rfc2104-string-make-unibyte (string)
- "Return the unibyte equivalent of STRING.
-In XEmacs return just STRING."
- (if (featurep 'xemacs)
- string
- `(string-make-unibyte ,string))))
-
(defun rfc2104-hash (hash block-length hash-length key text)
(let* (;; if key is longer than B, reset it to HASH(key)
(key (if (> (length key) block-length)
(aset ipad i (logxor rfc2104-ipad c))
(aset opad i (logxor rfc2104-opad c)))
;; Perform inner hash.
- (setq partial (rfc2104-string-make-unibyte
+ (setq partial (string-make-unibyte
(funcall hash (concat ipad text))))
;; Pack latter part of opad.
(cl-do ((r 0 (+ 2 r))
(+ (* 16 (aref rfc2104-nybbles (aref partial r)))
( aref rfc2104-nybbles (aref partial (1+ r))))))
;; Perform outer hash.
- (rfc2104-string-make-unibyte (funcall hash opad))))
+ (string-make-unibyte (funcall hash opad))))
(provide 'rfc2104)