471 |
(if (null (and cred (condition-case () |
(if (null (and cred (condition-case () |
472 |
(progn |
(progn |
473 |
(require 'starttls) |
(require 'starttls) |
474 |
(call-process starttls-program)) |
(call-process (if starttls-use-gnutls |
475 |
|
starttls-gnutls-program |
476 |
|
starttls-program))) |
477 |
(error nil)))) |
(error nil)))) |
478 |
;; The normal case. |
;; The normal case. |
479 |
(open-network-stream "SMTP" process-buffer host port) |
(open-network-stream "SMTP" process-buffer host port) |
480 |
(let* ((cred-key (smtpmail-cred-key cred)) |
(let* ((cred-key (smtpmail-cred-key cred)) |
481 |
(cred-cert (smtpmail-cred-cert cred)) |
(cred-cert (smtpmail-cred-cert cred)) |
482 |
(starttls-extra-args |
(starttls-extra-args |
483 |
(when (and (stringp cred-key) (stringp cred-cert) |
(append |
484 |
(file-regular-p |
starttls-extra-args |
485 |
(setq cred-key (expand-file-name cred-key))) |
(when (and (stringp cred-key) (stringp cred-cert) |
486 |
(file-regular-p |
(file-regular-p |
487 |
(setq cred-cert (expand-file-name cred-cert)))) |
(setq cred-key (expand-file-name cred-key))) |
488 |
(list "--key-file" cred-key "--cert-file" cred-cert))) |
(file-regular-p |
489 |
|
(setq cred-cert (expand-file-name cred-cert)))) |
490 |
|
(list "--key-file" cred-key "--cert-file" cred-cert)))) |
491 |
(starttls-extra-arguments |
(starttls-extra-arguments |
492 |
(when (and (stringp cred-key) (stringp cred-cert) |
(append |
493 |
(file-regular-p |
starttls-extra-arguments |
494 |
(setq cred-key (expand-file-name cred-key))) |
(when (and (stringp cred-key) (stringp cred-cert) |
495 |
(file-regular-p |
(file-regular-p |
496 |
(setq cred-cert (expand-file-name cred-cert)))) |
(setq cred-key (expand-file-name cred-key))) |
497 |
(list "--x509keyfile" cred-key "--x509certfile" cred-cert)))) |
(file-regular-p |
498 |
|
(setq cred-cert (expand-file-name cred-cert)))) |
499 |
|
(list "--x509keyfile" cred-key "--x509certfile" cred-cert))))) |
500 |
(starttls-open-stream "SMTP" process-buffer host port))))) |
(starttls-open-stream "SMTP" process-buffer host port))))) |
501 |
|
|
502 |
(defun smtpmail-try-auth-methods (process supported-extensions host port) |
(defun smtpmail-try-auth-methods (process supported-extensions host port) |