(eval-and-compile
(autoload 'wl-addrmgr "wl-addrmgr"))
+(autoload 'open-ssl-stream "ssl")
+
(defvar wl-draft-buffer-message-number nil)
(defvar wl-draft-field-completion-list nil)
(defvar wl-draft-verbose-send t)
(list wl-smtp-authenticate-type)))))
(smtp-use-sasl (and smtp-sasl-mechanisms t))
(smtp-use-starttls (eq wl-smtp-connection-type 'starttls))
+ (smtp-open-connection-function
+ (if (eq wl-smtp-connection-type 'ssl)
+ #'open-ssl-stream
+ smtp-open-connection-function))
+ (smtp-end-of-line
+ (if (eq wl-smtp-connection-type 'ssl)
+ "\n"
+ smtp-end-of-line))
smtp-sasl-user-name smtp-sasl-properties sasl-read-passphrase)
(if (and (string= (car smtp-sasl-mechanisms) "DIGEST-MD5")
;; sendmail bug?
(defun wl-draft-send-mail-with-pop-before-smtp ()
"Send the prepared message buffer with POP-before-SMTP."
(require 'elmo-pop3)
- (let ((session
+ (let ((folder
(luna-make-entity
'elmo-pop3-folder
:user (or wl-pop-before-smtp-user
elmo-pop3-default-port)
:auth (or wl-pop-before-smtp-authenticate-type
elmo-pop3-default-authenticate-type)
- :stream-type (or wl-pop-before-smtp-stream-type
- elmo-pop3-default-stream-type))))
+ :stream-type (elmo-get-network-stream-type
+ (or wl-pop-before-smtp-stream-type
+ elmo-pop3-default-stream-type))))
+ session)
(condition-case error
(progn
- (elmo-pop3-get-session session)
+ (setq session (elmo-pop3-get-session folder))
(when session (elmo-network-close-session session)))
(error
- (elmo-network-close-session session)
(unless (string= (nth 1 error) "Unplugged")
- (signal (car error)(cdr error))))))
+ (signal (car error) (cdr error))))))
(wl-draft-send-mail-with-smtp))
(defun wl-draft-insert-required-fields (&optional force-msgid)
(goto-char (point-min)) ; to show recipients in header
(catch 'done
(while t
+ (discard-input)
(message "Send current draft? <y/n/j(down)/k(up)> ")
(setq answer (let ((cursor-in-echo-area t)) (read-char)))
(cond
(put-text-property (point-min) (point-max) 'face nil)
(wl-highlight-message (point-min) (point-max) t))
(set-buffer-modified-p modified))))
+ (static-when (featurep 'xemacs)
+ ;; Cope with one of many XEmacs bugs that `recenter' takes
+ ;; a long time if there are a lot of invisible text lines.
+ (redraw-frame))
(recenter n))
;; insert element from history