CURLOPT_NOSIGNAL(3)
CURLOPT_NOSIGNAL(3) curl_easy_setopt options CURLOPT_NOSIGNAL(3)
NAME
CURLOPT_NOSIGNAL - skip all signal handling
SYNOPSIS
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NOSIGNAL,
long onoff);
DESCRIPTION
If onoff is 1, libcurl will not use any functions that
install signal handlers or any functions that cause signals
to be sent to the process. This option is here to allow
multi-threaded unix applications to still set/use all
timeout options etc, without risking getting signals.
If this option is set and libcurl has been built with the
standard name resolver, timeouts will not occur while the
name resolve takes place. Consider building libcurl with
the c-ares or threaded resolver backends to enable asynchro-
nous DNS lookups, to enable timeouts for name resolves
without the use of signals.
Setting CURLOPT_NOSIGNAL(3) to 1 makes libcurl NOT ask the
system to ignore SIGPIPE signals, which otherwise are sent
by the system when trying to send data to a socket which is
closed in the other end. libcurl makes an effort to never
cause such SIGPIPEs to trigger, but some operating systems
have no way to avoid them and even on those that have there
are some corner cases when they may still happen, contrary
to our desire. In addition, using CURLAUTH_NTLM_WB authenti-
cation could cause a SIGCHLD signal to be raised.
DEFAULT
0
AVAILABILITY
Added in 7.10
RETURN VALUE
Returns CURLE_OK if the option is supported, and
CURLE_UNKNOWN_OPTION if not.
libcurl 7.58.0 Last change: February 03, 2016 1
Man(1) output converted with
man2html