* mail/rmail.el (rmail-enable-mime-composing): New. A lightweight
version of rmail-enable-mime.
(rmail-forward): Use it.
* message.el (message-forward-rmail-make-body):
save-window-excursion.
(message-encode-message-body): no error.
(message-setup-1): compose-mail send-actions are different from
message-send-actions.
* message.el (message-forward-subject-author-subject): Don't use
message-news-p, which widens the buffer.
(message-forward-make-body): New function.
(message-forward): Use it.
(message-insinuate-rmail): New.
(message-forward-rmail-make-body): New.
(smtpmail-cred-user, smtpmail-cred-cert, smtpmail-cred-passwd):
Defsubst instead of defmacro.
(smtpmail-intersection): Return value in reverse order.
(smtpmail-open-stream): Use stringp instead of string-to-list.
(smtpmail-open-stream, smtpmail-try-auth-methods): New functions,
separated from smtpmail-via-smtp.
(top level): Autoload starttls, mail-utils and rfc2104.
(smtpmail-smtp-service): Doc fix. :type fix.
(smtpmail-debug-info): Doc fix.
(smtpmail-debug-verb, smtpmail-auth-credentials)
(smtpmail-starttls-credentials, smtpmail-auth-supported): New variables.
(smtpmail-deduce-address-list, smtpmail-send-it): Don't require
mail-utils (it is autoloaded).
(smtpmail-cred-server, smtpmail-cred-port, smtpmail-cred-key)
(smtpmail-cred-user, smtpmail-cred-cert, smtpmail-cred-passwd)
(smtpmail-find-credentials, smtpmail-intersection): New utility funs.
(smtpmail-via-smtp): Support STARTTLS, if binary is installed.
(smtpmail-via-smtp): Support AUTH.
(smtpmail-via-smtp): Use `smtpmail-debug-verb' to control VERB.
(mail-mode): Use define-derived-mode.
Fix ordering of alternatives in adaptive-fill-regexp.
(mail-mode-map): Don't rely on keymap's internal representation.
(mail-do-fcc): Error if header-end is not a marker.
(mail-do-fcc): Add a comment.
(mail-reply-to): Doc fix.
(mail-signature): Make ATPOINT optional.
(mail-yank-original): Use cond instead of nestled if.
(rmail-decode-babyl-format): Use detect-coding-with-priority
instead of detect-coding-region, to favor detection of emacs-mule
encoded Babyl files written by rmailout.el etc. Suggested by
Kenichi Handa <handa@etl.go.jp>.
(rmail-msg-restore-non-pruned-header): Likewise.
If point was in the old pruned header, put it at the top.
(rmail-msg-prune-header): If point was at the top, keep it there.
(rmail-narrow-to-non-pruned-header): New function.
(rmail-retry-failure): Use rmail-narrow-to-non-pruned-header.
rmail-view-buffer.
(rmail-insert-mime-resent-message-function): New
variable.
(rmail-resend): Modify to work in `rmail-view-buffer'; call
`rmail-insert-mime-resent-message-function' if `rmail-enable-mime'
is non-nil.