Daniel Stenberg schrieb:
Hi gnutls hackers!

I want to be able to use GnuTLS without ever having to bother with signals!

We're using GnuTLS within libcurl and lots of people use it multi-threaded and then signals don't work properly and make no sense. Within libcurl itself we then make an effort to avoid them all over, but now we've fallen over a problem when GnuTLS sends (or rather is the cause of) a SIGPIPE.

I've checked the _gnutls_io_write_buffered() function in both 1.4.4 and 1.5.3 and there doesn't seem to be any means to disable the signal-generation.

May I suggest that we at least add an option that avoids signals when using GnuTLS? It would be a matter of using the fourth send() argument on most platforms, and the SO_NOSIGPIPE socket option on some. We already do this magic in libcurl.

I would be willing to provide a patch if there's no major objections.

Here's the full backtrace from Brendan Jurd who faced this problem:

    http://curl.haxx.se/mail/lib-2006-10/0321.html



Why not simply disable SIGPIPE for the whole application with sigaction()?

Rupert

--
Rupert Kittinger-Sereinig <[EMAIL PROTECTED]>
Krenngasse 32
A-8010 Graz
Austria



_______________________________________________
Help-gnutls mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-gnutls

Reply via email to