For some reason, SMPT no longer works in Starttls upon upgrading from emacs-22.3-bin-i386 to emacs-23.1-bin-i386 on Windows XP Professional, Service Pack 3.
When I try to send mail via SMTP, the following error message appears in the minibuffer: > Autoloading failed to define function starttls-any-program-available A look at the *Messages* buffer reveals the following relevant lines: > Sending via mail... > smtpmail-open-stream: Autoloading failed to define function > starttls-any-program-available My previous starttls.el file (in my C:\bin\emacs-23.1\site-lisp\ directory) did not contain the function "starttls-any-program-available", so after reading the article "Re: smtpmail and starttls improvement when starttls program is missing" (see http://www.opensubscriber.com/message/[email protected]/10640587.html), I updated my starttls.el file, with the file contents at http://www.update.uu.se/~ams/home/home/emacs/lisp/gnus/starttls.el. Here is the relevant portion: > (defun starttls-open-stream (name buffer host port) > "Open a TLS connection for a port to a host. > Returns a subprocess object to represent the connection. > Input and output work as for subprocesses; `delete-process' closes it. > Args are NAME BUFFER HOST PORT. > NAME is name for process. It is modified if necessary to make it unique. > BUFFER is the buffer (or `buffer-name') to associate with the process. > Process output goes at end of that buffer, unless you specify > an output stream or filter function to handle the output. > BUFFER may be also nil, meaning that this process is not associated > with any buffer > Third arg is name of the host to connect to, or its IP address. > Fourth arg PORT is an integer specifying a port to connect to. > If `starttls-use-gnutls' is nil, this may also be a service name, but > GNUTLS requires a port number." > (if starttls-use-gnutls > (starttls-open-stream-gnutls name buffer host port) > (message "Opening STARTTLS connection to `%s:%s'" host (format "%s" port)) > (let* ((process-connection-type starttls-process-connection-type) > (process (apply #'start-process > name buffer starttls-program > host (format "%s" port) > starttls-extra-args))) > (starttls-set-process-query-on-exit-flag process nil) > process))) > (defun starttls-any-program-available () > (let ((program (if starttls-use-gnutls > starttls-gnutls-program > starttls-program))) > (condition-case () > (progn > (call-process program) > program) > (error (progn > (message "No STARTTLS program was available (tried '%s')" > program) > nil))))) > (provide 'starttls) However, the error message still appears. I copied starttls.el directly without installing gnutils, which is more difficult to install on Windows than on Linux/UNIX. Does anybody know how to resolve this issue? Any help would be appreciated. -- Benjamin L. Russell -- Benjamin L. Russell / DekuDekuplex at Yahoo dot com http://dekudekuplex.wordpress.com/ Translator/Interpreter / Mobile: +011 81 80-3603-6725 "Furuike ya, kawazu tobikomu mizu no oto." -- Matsuo Basho^ _______________________________________________ info-gnus-english mailing list [email protected] http://lists.gnu.org/mailman/listinfo/info-gnus-english
