listing for S
siginterrupt - Allow signals to interrupt functions
int flag );
Standard C Library (libc)
Berkeley Compatibility Library (libbsd.a)
Interfaces documented on this reference page conform to industry standards
siginterrupt() (libc version): XSH4.2
Refer to the standards(5) reference page for more information about
industry standards and associated tags.
sig Specifies the expected interrupt signal.
Indicates whether the function is to restart when interrupted by the
specified signal. When the flag parameter is TRUE, restart is disabled.
When the flag parameter is FALSE, restart is enabled.
The siginterrupt() function is used to change the restart behavior of a
system call when it is interrupted by the signal specified by the sig
parameter. When the flag parameter is FALSE (0), system calls restart when
they are interrupted by the sig signal and no data has yet been
When the flag parameter is TRUE (1), restart of system calls is disabled.
When a system call is interrupted by the sig signal and no data has been
transferred, the function returns a value of -1 with errno set to [EINTR].
Otherwise, interrupted system calls that have started transferring data
return a value that is the number of data bytes actually transferred.
[Tru64 UNIX] System call interrupt is the default behavior unless the
calling program has been linked with the libbsd library and the libbsd
version of signal() has been used.
The siginterrupt() function is provided for compatibility with BSD systems.
When writing or rewriting portable applications, use the sigaction()
function with the SA_RESTART option instead of siginterrupt().
The use of the siginterrupt() function does not affect signal-handling
semantics in any other way. Programs may switch between restartable and
interruptible system call operation as often as desired in the execution of
Issuing a siginterrupt() call during the execution of a signal handler
causes the new action to take place when the next instance of the specified
signal is caught.
Upon successful completion, siginterrupt() returns a value of 0 (zero).
Otherwise, a value of -1 is returned to indicate that an invalid signal
value has been used.
If the siginterrupt() function fails, errno may be set to the following
The value of the sig parameter does not represent a valid signal.
Functions: sigaction(2), sigprocmask(2), sigsuspend(2)
listing for S