(autoload 'sasl-plain "sasl")
(autoload 'sasl-scram-md5-client-msg-1 "sasl")
(autoload 'sasl-scram-md5-client-msg-2 "sasl")
- (autoload 'sasl-scram-md5-authenticate-server "sasl"))
+ (autoload 'sasl-scram-md5-authenticate-server "sasl")
+ (autoload 'sasl-digest-md5-digest-response "sasl"))
(eval-when-compile (require 'cl)) ; push
(not (integerp (car response)))
(>= (car response) 400))
(throw 'done (car (cdr response))))
- (starttls-negotiate process))
+ (starttls-negotiate process)
+ ;; for sendmail warning XXX
+ (smtp-send-command process (format "HELO %s" (smtp-make-fqdn)))
+ (setq response (smtp-read-response process)))
;; AUTH --- SMTP Service Extension for Authentication (RFC2554)
(when smtp-authenticate-type
- (let ((auth (intern smtp-authenticate-type)) method)
+ (let ((auth smtp-authenticate-type) method)
(if (and
(memq auth extensions)
(setq method (nth 1 (assq auth smtp-authenticate-method-alist))))
(funcall method process)
- (throw 'smtp-error
+ (throw 'done
(format "AUTH mechanism %s not available" auth)))))
;; ONEX --- One message transaction only (sendmail extension?)
t)
(if (and process
- (eq (process-status process) 'open))
+ (memq (process-status process) '(open run)))
(progn
;; QUIT
(smtp-send-command process "QUIT")
(defun smtp-deduce-address-list (smtp-text-buffer header-start header-end)
"Get address list suitable for smtp RCPT TO:<address>."
- (let ((case-fold-search t)
- (simple-address-list "")
+ (let ((simple-address-list "")
this-line
this-line-end
addr-regexp
(save-excursion
;;
(set-buffer smtp-address-buffer)
+ (setq case-fold-search t)
(erase-buffer)
(insert (save-excursion
(set-buffer smtp-text-buffer)
user
smtp-authenticate-passphrase
"smtp" smtp-server realm)
- 'no-line-break))
+ 'no-line-break) t)
(setq response (smtp-read-response process))
(if (or (null (car response))
(not (integerp (car response)))