+2002-07-24 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * smtp.el (smtp-end-of-line): New variable.
+ (smtp-read-response): Use it.
+ (smtp-send-command): Use it.
+ (smtp-send-data): Use it.
+
+\f
2002-06-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
* FLIM: Version 1.14.4 (Kashiharajing\e-Dþ-mae) released.\e-A
2001-02-27 Shuhei KOBAYASHI <shuhei@aqua.ocn.ne.jp>
MIME Parameter Value decoder support.
-
+
* mime-def.el (std11-quoted-pair-regexp, std11-non-qtext-char-list,
std11-qtext-regexp, std11-quoted-string-regexp): Removed.
(mime-media-type/subtype-regexp): Ditto.
mime-parse-Content-Transfer-Encoding): New implementation.
(mime-read-Content-Type, mime-read-Content-Disposition,
mime-read-Content-Transfer-Encoding): Ditto.
-
+
2001-02-26 Shuhei KOBAYASHI <shuhei@aqua.ocn.ne.jp>
* hmac-md5.el, hmac-sha1.el: Modify comments.
* qmtp.el (qmtp-open-connection-function): Revert initial value to
`open-network-stream'.
(qmtp-send-buffer): Use `binary-funcall'.
-
+
2000-12-23 OKAZAKI Tetsurou <okazaki@be.to>
* FLIM-ELS (flim-modules): Delete `mmdbuffer'.
* mmbuffer.el (mime-write-entity-body): Use `binary-write-region'
instead of `write-region-as-binary'.
(mime-write-entity): Don't use `write-region-as-raw-text-CRLF'.
-
+
* mime-def.el: Don't require `poem'.
(binary-insert-file-contents): New function.
(binary-write-region): New function.
2000-12-04 Daiki Ueno <ueno@unixuser.org>
- * smtpmail.el (smtpmail-send-it): Use `smtp-send-buffer' instead of
- `smtp-via-smtp'.
- (smtpmail-send-queued-mail): Ditto.
+ * smtpmail.el (smtpmail-send-it): Use `smtp-send-buffer' instead of
+ `smtp-via-smtp'.
+ (smtpmail-send-queued-mail): Ditto.
2000-11-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2000-05-25 Tanaka Akira <akr@m17n.org>
- * mime-en.sgml, mime-ja.sgml: Update for CVS via SSH.
-
+ * mime-en.sgml, mime-ja.sgml: Update for CVS via SSH.
+
2000-05-09 Katsumi Yamaoka <yamaoka@jpl.org>
* smtp.el (smtp-deduce-address-list): Set `case-fold-search' to `t'
;;; Commentary:
-;;
+;;
;;; Code:
(defcustom smtp-service "smtp"
"SMTP service port number. \"smtp\" or 25."
:type '(choice (integer :tag "25" 25)
- (string :tag "smtp" "smtp"))
+ (string :tag "smtp" "smtp"))
:group 'smtp)
(defcustom smtp-local-domain nil
(defvar smtp-submit-package-function #'smtp-submit-package)
+(defvar smtp-end-of-line "\r\n"
+ "*String to use on the end of lines when talking to the SMTP server.
+This is \"\\r\\n\" by default, but should be \"\\n\" when using and
+indirect connection method, e.g. bind `smtp-open-connection-function'
+to a custom function as shown below:
+
+\(setq smtp-open-connection-function
+ (lambda (name buffer host service)
+ (start-process name buffer \"ssh\" \"-C\" host
+ \"telnet\" \"-8\" host service)))")
+
;;; @ SMTP package
;;; A package contains a mail message, an envelope sender address,
;;; and one or more envelope recipient addresses. In ESMTP model
response)
(while response-continue
(goto-char smtp-read-point)
- (while (not (search-forward "\r\n" nil t))
+ (while (not (search-forward smtp-end-of-line nil t))
(accept-process-output (smtp-connection-process-internal connection))
(goto-char smtp-read-point))
(if decoder
(let ((string (buffer-substring smtp-read-point (- (point) 2))))
(delete-region smtp-read-point (point))
- (insert (funcall decoder string) "\r\n")))
+ (insert (funcall decoder string) smtp-end-of-line)))
(setq response
(nconc response
(list (buffer-substring
(smtp-connection-encoder-internal connection)))
(set-buffer (process-buffer process))
(goto-char (point-max))
- (setq command (concat command "\r\n"))
+ (setq command (concat command smtp-end-of-line))
(insert command)
(setq smtp-read-point (point))
(if encoder
(smtp-connection-encoder-internal connection)))
;; Escape "." at start of a line.
(if (eq (string-to-char data) ?.)
- (setq data (concat "." data "\r\n"))
- (setq data (concat data "\r\n")))
+ (setq data (concat "." data smtp-end-of-line))
+ (setq data (concat data smtp-end-of-line)))
(if encoder
(setq data (funcall encoder data)))
(process-send-string process data)))