Function: message-update-smtp-method-header

message-update-smtp-method-header is a byte-compiled function defined in message.el.gz.

Signature

(message-update-smtp-method-header)

Documentation

Insert an X-Message-SMTP-Method header according to message-server-alist.

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/message.el.gz
(defun message-update-smtp-method-header ()
  "Insert an X-Message-SMTP-Method header according to `message-server-alist'."
  (unless (message-fetch-field "X-Message-SMTP-Method")
    (let ((from (cadr (mail-extract-address-components
                       (save-restriction
                         (widen)
                         (message-narrow-to-headers-or-head)
                         (message-fetch-field "From")))))
          method)
      (catch 'exit
        (dolist (server message-server-alist)
          (cond ((functionp (car server))
                 (let ((res (funcall (car server))))
                   (when res
                     (setq method (or (cdr server) res))
                     (throw 'exit nil))))
                ((and (stringp (car server))
                      (string-equal-ignore-case (car server) from))
                 (setq method (cdr server))
                 (throw 'exit nil)))))
      (when method
        (message-add-header (concat "X-Message-SMTP-Method: " method))))))