1siginterrupt(3UCB) SunOS/BSD Compatibility Library Functionssiginterrupt(3UCB)
2
3
4

NAME

6       siginterrupt - allow signals to interrupt functions
7

SYNOPSIS

9       /usr/ucb/cc [ flag ... ] file ...
10
11       int siginterrupt(sig, flag)
12       int sig, flag;
13
14

DESCRIPTION

16       siginterrupt()  is  used to change the function restart behavior when a
17       function is interrupted by the specified signal. If the flag  is  false
18       (0),  then  functions  will be restarted if they are interrupted by the
19       specified signal and no data has  been  transferred  yet.  System  call
20       restart is the default behavior when the signal(3C) routine is used.
21
22
23       If  the  flag is true,   (1), then restarting of functions is disabled.
24       If a function is interrupted by the specified signal and  no  data  has
25       been transferred, the function will return  −1 with errno set to EINTR.
26       Interrupted functions that have started transferring data  will  return
27       the amount of data actually transferred.
28
29
30       Issuing  a siginterrupt() call during the execution of a signal handler
31       will cause the new action to take  place  on  the  next  signal  to  be
32       caught.
33

RETURN VALUES

35       A   0  value  indicates  that the call succeeded. A  −1 value indicates
36       that the call failed and  errno is set to indicate the error.
37

ERRORS

39       siginterrupt() may return the following error:
40
41       EINVAL    sig is not a valid signal.
42
43

SEE ALSO

45       sigblock(3UCB), sigvec(3UCB), signal(3C)
46

NOTES

48       Use of these interfaces should be restricted to only applications writ‐
49       ten  on  BSD platforms.  Use of these interfaces with any of the system
50       libraries or in multi-threaded applications is unsupported.
51
52
53       This library routine uses an extension  of  the  sigvec(3UCB)  function
54       that  is not available in 4.2 BSD, hence it should not be used if back‐
55       ward compatibility is needed.
56
57
58
59SunOS 5.11                        30 Oct 2007               siginterrupt(3UCB)
Impressum