--- hashcash.el~ 2003-04-16 22:33:29 +0000 +++ hashcash.el 2003-05-28 23:29:01 +0000 @@ -70,17 +70,15 @@ (defun hashcash-strip-quoted-names (addr) (setq addr (mail-strip-quoted-names addr)) - (if (and addr (string-match "^[^+@]+\\(\\+[^@]*\\)@" addr)) - (concat (subseq addr 0 (match-beginning 1)) (subseq addr (match-end 1))) + (if (and addr (string-match "\\`\\([^+@]+\\)\\+[^@]*\\(@.+\\)" addr)) + (concat (match-string 1 addr) (match-string 2 addr)) addr)) (defun hashcash-payment-required (addr) "Return the hashcash payment value required for the given address." (let ((val (assoc addr hashcash-payment-alist))) (if val - (if (cddr val) - (caddr val) - (cadr val)) + (or (nth 2 val) (nth 1 val)) hashcash-default-payment))) (defun hashcash-payment-to (addr) @@ -99,7 +97,7 @@ (set-buffer (get-buffer-create " *hashcash*")) (erase-buffer) (call-process hashcash-path nil t nil - (concat "-b " (number-to-string val)) str) + "-q" "-b" (number-to-string val) str) (goto-char (point-min)) (buffer-substring (hashcash-point-at-bol) (hashcash-point-at-eol))) nil)) @@ -145,7 +143,7 @@ "Verify a hashcash payment" (let ((key (if (< (hashcash-version token) 1.2) (cadr (split-string token ":")) - (caddr (split-string token ":"))))) + (nth 2 (split-string token ":"))))) (cond ((null resource) (let ((elt (assoc key hashcash-accept-resources))) (and elt (hashcash-check-payment token (car elt) @@ -180,7 +178,7 @@ (when (and hashcash-in-news ng) (setq addrlist (nconc addrlist (split-string ng ",[ \t\n]*"))))) (when addrlist - (mapc #'hashcash-insert-payment addrlist))))) + (mapcar #'hashcash-insert-payment addrlist))))) t) ;;;###autoload