Use sigprocmask instead of sigsetmask.

This commit is contained in:
Giuseppe Scrivano 2011-08-11 14:23:39 +02:00
parent 6330e4f8b8
commit 3382df979c
4 changed files with 10 additions and 3 deletions

View File

@ -1,5 +1,7 @@
2011-08-11 Giuseppe Scrivano <gscrivano@gnu.org>
* bootstrap.conf (gnulib_modules): Add `sigprocmask'.
* configure.ac: Do not hardcode GNU TLS and OpenSSL libraries.
* bootstrap.conf (gnulib_modules): Include module iconv.

View File

@ -56,6 +56,7 @@ recv
select
send
setsockopt
sigprocmask
sigpipe
snprintf
socket

View File

@ -1,5 +1,8 @@
2011-08-11 Giuseppe Scrivano <gscrivano@gnu.org>
* utils.c (abort_run_with_timeout): Use sigprocmask instead of
sigsetmask.
* gnutls.c (ssl_connect_wget): Remove call to deprecated function
`gnutls_certificate_type_set_priority'.

View File

@ -1930,9 +1930,10 @@ abort_run_with_timeout (int sig)
/* We don't have siglongjmp to preserve the set of blocked signals;
if we longjumped out of the handler at this point, SIGALRM would
remain blocked. We must unblock it manually. */
int mask = siggetmask ();
mask &= ~sigmask (SIGALRM);
sigsetmask (mask);
sigset_t set;
sigemptyset (&set);
sigaddset (&set, SIGALRM);
sigprocmask (SIG_BLOCK, &set, NULL);
/* Now it's safe to longjump. */
longjmp (run_with_timeout_env, -1);