changeset 57435:2b938e7f92a5

(smtpmail-open-stream): Look for starttls-gnutls-program instead of starttls-program iff starttls-use-gnutls is non-nil. (smtpmail-open-stream): Don't overwrite user settings of starttls-extra-arguments and starttls-extra-args.
author Simon Josefsson <jas@extundo.com>
date Mon, 11 Oct 2004 18:42:00 +0000
parents 1776f7c5e250
children a2b628fd6c73
files lisp/mail/smtpmail.el
diffstat 1 files changed, 19 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/mail/smtpmail.el	Mon Oct 11 14:58:54 2004 +0000
+++ b/lisp/mail/smtpmail.el	Mon Oct 11 18:42:00 2004 +0000
@@ -471,26 +471,32 @@
     (if (null (and cred (condition-case ()
 			    (progn
 			      (require 'starttls)
-			      (call-process starttls-program))
+			      (call-process (if starttls-use-gnutls
+						starttls-gnutls-program
+					      starttls-program)))
 			  (error nil))))
 	;; The normal case.
 	(open-network-stream "SMTP" process-buffer host port)
       (let* ((cred-key (smtpmail-cred-key cred))
 	     (cred-cert (smtpmail-cred-cert cred))
 	     (starttls-extra-args
-	      (when (and (stringp cred-key) (stringp cred-cert)
-			 (file-regular-p
-			  (setq cred-key (expand-file-name cred-key)))
-			 (file-regular-p
-			  (setq cred-cert (expand-file-name cred-cert))))
-		(list "--key-file" cred-key "--cert-file" cred-cert)))
+	      (append
+	       starttls-extra-args
+	       (when (and (stringp cred-key) (stringp cred-cert)
+			  (file-regular-p
+			   (setq cred-key (expand-file-name cred-key)))
+			  (file-regular-p
+			   (setq cred-cert (expand-file-name cred-cert))))
+		 (list "--key-file" cred-key "--cert-file" cred-cert))))
 	     (starttls-extra-arguments
-	      (when (and (stringp cred-key) (stringp cred-cert)
-			 (file-regular-p
-			  (setq cred-key (expand-file-name cred-key)))
-			 (file-regular-p
-			  (setq cred-cert (expand-file-name cred-cert))))
-		(list "--x509keyfile" cred-key "--x509certfile" cred-cert))))
+	      (append
+	       starttls-extra-arguments
+	       (when (and (stringp cred-key) (stringp cred-cert)
+			  (file-regular-p
+			   (setq cred-key (expand-file-name cred-key)))
+			  (file-regular-p
+			   (setq cred-cert (expand-file-name cred-cert))))
+		 (list "--x509keyfile" cred-key "--x509certfile" cred-cert)))))
 	(starttls-open-stream "SMTP" process-buffer host port)))))
 
 (defun smtpmail-try-auth-methods (process supported-extensions host port)