Subject: Re: bug#7789: cannot send smtpmail using gmail & tls on woe32

From: [email-masked] (Claudio Bley)
Date: Tue, 18 Jan 2011 16:33:41 +0100

At Mon, 17 Jan 2011 17:47:28 -0500,
Eli Zaretskii wrote:
> 
> > From: [email-masked] (Claudio Bley)
> > Date: Mon, 17 Jan 2011 09:09:10 +0100
> > 
> > gnutls-cli waits for a SIGALRM to initiate the STARTTLS handshake --
> > which Emacs isn't able to send -- or, alternatively, an EOF -- which
> > doesn't work because communication is done over a pipe instead of a
> > PTY.
> 
> Is this a bug in the ported gnutls, in Emacs, or in both?

I'd say it's a deficiency of the platform.

Woe32 has no signal and no PTY support. So, the signal support
has been ifdef'ed out in gnutls and Emacs for Woe32.

> > I'm using cygwin's gnutls-cli and have hacked ssl.el in order to
> > replace the signal-process calls with (call-process "kill.exe" nil nil
> > nil "-ALRM" PID). This works because cygwin provides its own layer of
> > signal handling and is able to send / receive the SIGALRM signal.
> 
> How about making that hack part of Emacs?  It could be conditioned on
> running on Windows.

You mean to distribute cygwin's kill.exe with Emacs and just using it
instead of `signal-process' everywhere? Or to depend upon the user to
install a cygwin environment along with Emacs?

I'd be a bit reluctant to do that since it seems a bit awkward...

IMHO, it would be better to let the programs work together on all
platforms using different means of notification where necessary,
e.g. using events on windows instead of signals...?! But that would
indeed require an appropriate change on both sides.

-- 
Claudio