diff options
author | jilles <jilles@FreeBSD.org> | 2012-09-27 17:48:04 +0000 |
---|---|---|
committer | jilles <jilles@FreeBSD.org> | 2012-09-27 17:48:04 +0000 |
commit | e4c096aeb4d0889884334130ea1e8ab58ca88a8d (patch) | |
tree | 73af5747ca62feb897ee5a912157eb8bf53920b0 /lib/libc | |
parent | 3646977f282c6d3373dd9fb627f5cfc7c84e95a2 (diff) | |
download | FreeBSD-src-e4c096aeb4d0889884334130ea1e8ab58ca88a8d.zip FreeBSD-src-e4c096aeb4d0889884334130ea1e8ab58ca88a8d.tar.gz |
sigaction(2),sigwait(2),sigwaitinfo(2): Remove [EFAULT] error condition.
Passing an invalid pointer results in undefined behaviour.
The wrappers in libthr access some of the data pointed to by the arguments
in userland, so that an invalid pointer will cause a signal and not an
[EFAULT] error return.
Furthermore, if the [EFAULT] error occurs when the kernel is writing, it is
not a proper error in the sense that the call still commits (changing the
signal disposition or accepting the signal).
MFC after: 1 week
Diffstat (limited to 'lib/libc')
-rw-r--r-- | lib/libc/sys/sigaction.2 | 9 | ||||
-rw-r--r-- | lib/libc/sys/sigwait.2 | 5 | ||||
-rw-r--r-- | lib/libc/sys/sigwaitinfo.2 | 5 |
3 files changed, 3 insertions, 16 deletions
diff --git a/lib/libc/sys/sigaction.2 b/lib/libc/sys/sigaction.2 index 47b3a72..e161bf2 100644 --- a/lib/libc/sys/sigaction.2 +++ b/lib/libc/sys/sigaction.2 @@ -28,7 +28,7 @@ .\" From: @(#)sigaction.2 8.2 (Berkeley) 4/3/94 .\" $FreeBSD$ .\" -.Dd April 18, 2010 +.Dd September 27, 2012 .Dt SIGACTION 2 .Os .Sh NAME @@ -586,13 +586,6 @@ system call will fail and no new signal handler will be installed if one of the following occurs: .Bl -tag -width Er -.It Bq Er EFAULT -Either -.Fa act -or -.Fa oact -points to memory that is not a valid part of the process -address space. .It Bq Er EINVAL The .Fa sig diff --git a/lib/libc/sys/sigwait.2 b/lib/libc/sys/sigwait.2 index a9e605c..525bffb 100644 --- a/lib/libc/sys/sigwait.2 +++ b/lib/libc/sys/sigwait.2 @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd August 24, 2011 +.Dd September 27, 2012 .Dt SIGWAIT 2 .Os .Sh NAME @@ -107,9 +107,6 @@ The .Fa set argument specifies one or more invalid signal numbers. -.It Bq Er EFAULT -Any arguments point outside the allocated address space or there is a -memory protection fault. .El .Sh SEE ALSO .Xr sigaction 2 , diff --git a/lib/libc/sys/sigwaitinfo.2 b/lib/libc/sys/sigwaitinfo.2 index a83de06..9109759 100644 --- a/lib/libc/sys/sigwaitinfo.2 +++ b/lib/libc/sys/sigwaitinfo.2 @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd August 24, 2011 +.Dd September 27, 2012 .Dt SIGTIMEDWAIT 2 .Os .Sh NAME @@ -172,9 +172,6 @@ system calls fail if: .Bl -tag -width Er .It Bq Er EINTR The wait was interrupted by an unblocked, caught signal. -.It Bq Er EFAULT -Any arguments point outside the allocated address space or there is a -memory protection fault. .Pp .El The |