[t-gnus] Don't work cram-md5 under xemacs (Re: SMTP AUTH)
Hirokazu FUKUI
fukui @ atesoft.advantest.co.jp
1999年 11月 17日 (水) 18:15:46 JST
福居です。
In [emacs-mime-ja : No.00087]
Shuhei KOBAYASHI <shuhei @ aqua.ocn.ne.jp> wrote:
> >>>>> In <14380.45800.685611.79026N @ vlsi.kuee.kyoto-u.ac.jp>,
> >>>>> okada @ opaopa.org (岡田 健一 / Kenichi OKADA) wrote:
> > CRAM-MD5で認証を行なう時に Shuhei KOBAYASHI先生作のhmac-md5 packageを
> > 使っているんですが,XEmacsで動かないようです.
> > http://lists.airs.net/wl/archive/199910/msg00150.html
> ふむふむ, XEmacs の md5 の CODING 引数はこんな時に必要なんですね.
t-gnus の nnimap でも、 xemacs を使っていると 同じ原因で、
CRAM-MD5 を使った認証に失敗します。
;; 上の記事のおかげで簡単に原因が分かりました :-)
とりあえず、私は .emacs に以下のように書いて、この問題を回避して
います。
-------------- next part --------------
(when (and (fboundp 'md5)
(subrp (symbol-function 'md5)))
(defun md5-binary (object &optional start end)
(md5 object start end 'binary))
(eval-after-load "imap"
'(defun imap-cram-md5-auth (buffer)
"Login to server using the AUTH CRAM-MD5 method."
(imap-interactive-login
buffer
(lambda (user passwd)
(imap-ok-p
(imap-send-command-wait
(list
"AUTHENTICATE CRAM-MD5"
(lambda (challenge)
(let* ((decoded (base64-decode-string challenge))
(hash (rfc2104-hash 'md5-binary 64 16 passwd decoded))
(response (concat user " " hash))
(encoded (base64-encode-string response)))
encoded))))))))))
-------------- next part --------------
--
福居宏和 (Hirokazu FUKUI) E-mail:fukui @ atesoft.advantest.co.jp
More information about the Emacs-mime-ja
mailing list