BSD 4_3_Net_2 release
[unix-history] / usr / src / lib / libc / gen / siginterrupt.3
index d89bf55..6b7d7ab 100644 (file)
-.\" Copyright (c) 1985 Regents of the University of California.
-.\" All rights reserved.  The Berkeley software License Agreement
-.\" specifies the terms and conditions for redistribution.
+.\" Copyright (c) 1985, 1991 Regents of the University of California.
+.\" All rights reserved.
 .\"
 .\"
-.\"    @(#)siginterrupt.3      6.1 (Berkeley) 5/15/85
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\"    This product includes software developed by the University of
+.\"    California, Berkeley and its contributors.
+.\" 4. Neither the name of the University nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
 .\"
 .\"
-.TH SIGINTERRUPT 3 "May 15, 1985"
-.UC 6
-.SH NAME
-siginterrupt \- allow signals to interrupt system calls
-.SH SYNOPSIS
-.nf
-.B siginterrupt(sig, flag);
-.B int sig, flag;
-.SH DESCRIPTION
-.I Siginterrupt
+.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"     @(#)siginterrupt.3     6.2 (Berkeley) 4/19/91
+.\"
+.Dd April 19, 1991
+.Dt SIGINTERRUPT 3
+.Os BSD 4.3
+.Sh NAME
+.Nm siginterrupt
+.Nd allow signals to interrupt system calls
+.Sh SYNOPSIS
+.Fd #include <signal.h>
+.Ft int
+.Fn siginterrupt "int sig" "int flag"
+.Sh DESCRIPTION
+The
+.Fn siginterrupt
+function
 is used to change the system call restart
 behavior when a system call is interrupted by the specified signal.
 If the flag is false (0), then system calls will be restarted if
 they are interrupted by the specified signal
 and no data has been transferred yet.
 is used to change the system call restart
 behavior when a system call is interrupted by the specified signal.
 If the flag is false (0), then system calls will be restarted if
 they are interrupted by the specified signal
 and no data has been transferred yet.
-System call restart is the default behavior on 4.2 BSD.
-.PP
-If the flag is true (1), then restarting of system calls is disabled.
+System call restart is the default behavior on
+.Bx 4.2 .
+.Pp
+If the flag is true (1),
+then restarting of system calls is disabled.
 If a system call is interrupted by the specified signal
 and no data has been transferred,
 If a system call is interrupted by the specified signal
 and no data has been transferred,
-the system call will return -1 with errno set to EINTR.
+the system call will return \-1 with the global variable
+.Va errno
+set to
+.Dv EINTR . 
 Interrupted system calls that have started transferring
 data will return the amount of data actually transferred.
 Interrupted system calls that have started transferring
 data will return the amount of data actually transferred.
-System call interrupt is the signal behavior found on 4.1 BSD
-and AT&T System V UNIX systems.
-.PP
-Note that the new 4.2 BSD signal handling semantics are not
+System call interrupt is the signal behavior found on
+.Bx 4.1
+and
+.At V
+systems.
+.Pp
+Note that the new
+.Bx 4.2
+signal handling semantics are not
 altered in any other way.
 Most notably, signal handlers always remain installed until
 explicitly changed by a subsequent
 altered in any other way.
 Most notably, signal handlers always remain installed until
 explicitly changed by a subsequent
-.IR sigvec (2)
+.Xr sigaction 2
 call, and the signal mask operates as documented in
 call, and the signal mask operates as documented in
-.IR sigvec (2).
+.Xr sigaction 2 .
 Programs may switch between restartable and interruptible
 system call operation as often as desired in the execution of a program.
 Programs may switch between restartable and interruptible
 system call operation as often as desired in the execution of a program.
-.PP
+.Pp
 Issuing a
 Issuing a
-.IR siginterrupt (3)
+.Fn siginterrupt 3
 call during the execution of a signal handler will cause
 the new action to take place on the next signal to be caught.
 call during the execution of a signal handler will cause
 the new action to take place on the next signal to be caught.
-.SH NOTES
+.Sh NOTES
 This library routine uses an extension of the
 This library routine uses an extension of the
-.IR sigvec (2)
-system call that is not available in 4.2BSD,
+.Xr sigaction 2
+system call that is not available in
+.Bx 4.2 ,
 hence it should not be used if backward compatibility is needed.
 hence it should not be used if backward compatibility is needed.
-.SH "RETURN VALUE
+.Sh RETURN VALUES
 A 0 value indicates that the call succeeded.
 A 0 value indicates that the call succeeded.
-A -1 value indicates that an invalid signal number has been supplied.
-.SH "SEE ALSO"
-sigvec(2), sigblock(2), sigpause(2), sigsetmask(2).
+A \-1 value indicates that an invalid signal number has been supplied.
+.Sh SEE ALSO
+.Xr sigaction 2 ,
+.Xr sigblock 2 ,
+.Xr sigpause 2 ,
+.Xr sigsetmask 2 .
+.Sh HISTORY
+The
+.Fn siginterrupt
+function appeared in 
+.Bx 4.3 .