aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXin LI <delphij@FreeBSD.org>2023-03-10 02:10:50 +0000
committerXin LI <delphij@FreeBSD.org>2023-03-24 06:40:31 +0000
commite68521de19d4661b9ed8a6432039eaf882cfb4c2 (patch)
treeb5b37eaab142912f6c6f9759e027b71151a02fa6
parent9845906f02fea5a4f573a97a85d376acadef8769 (diff)
downloadsrc-e68521de19d4661b9ed8a6432039eaf882cfb4c2.tar.gz
src-e68521de19d4661b9ed8a6432039eaf882cfb4c2.zip
cap_*(2): Document ENOSYS behavior.
Summary: All cap_* system calls would fail when capability mode support is not present. Reviewed by: emaste, pauamma Differential Revision: https://reviews.freebsd.org/D38976 (cherry picked from commit 75798f9b01055261881938326a5c77e55f79c7f7)
-rw-r--r--lib/libc/sys/cap_enter.27
-rw-r--r--lib/libc/sys/cap_fcntls_limit.25
-rw-r--r--lib/libc/sys/cap_ioctls_limit.229
-rw-r--r--lib/libc/sys/cap_rights_limit.25
4 files changed, 25 insertions, 21 deletions
diff --git a/lib/libc/sys/cap_enter.2 b/lib/libc/sys/cap_enter.2
index 428e0b0bcd09..56fc78a4b4f2 100644
--- a/lib/libc/sys/cap_enter.2
+++ b/lib/libc/sys/cap_enter.2
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 5, 2020
+.Dd March 9, 2023
.Dt CAP_ENTER 2
.Os
.Sh NAME
@@ -113,9 +113,8 @@ system calls
will fail if:
.Bl -tag -width Er
.It Bq Er ENOSYS
-The kernel is compiled without:
-.Pp
-.Cd "options CAPABILITY_MODE"
+The running kernel was compiled without
+.Cd "options CAPABILITY_MODE" .
.El
.Pp
The
diff --git a/lib/libc/sys/cap_fcntls_limit.2 b/lib/libc/sys/cap_fcntls_limit.2
index b09aebbe78f0..b7b38ba2ab51 100644
--- a/lib/libc/sys/cap_fcntls_limit.2
+++ b/lib/libc/sys/cap_fcntls_limit.2
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 5, 2020
+.Dd March 9, 2023
.Dt CAP_FCNTLS_LIMIT 2
.Os
.Sh NAME
@@ -111,6 +111,9 @@ argument is not a valid descriptor.
The
.Fa fcntlrightsp
argument points at an invalid address.
+.It Bq Er ENOSYS
+The running kernel was compiled without
+.Cd "options CAPABILITY_MODE" .
.El
.Sh SEE ALSO
.Xr cap_ioctls_limit 2 ,
diff --git a/lib/libc/sys/cap_ioctls_limit.2 b/lib/libc/sys/cap_ioctls_limit.2
index 0cf5ea8ca038..6696434e0bac 100644
--- a/lib/libc/sys/cap_ioctls_limit.2
+++ b/lib/libc/sys/cap_ioctls_limit.2
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 5, 2020
+.Dd March 9, 2023
.Dt CAP_IOCTLS_LIMIT 2
.Os
.Sh NAME
@@ -110,8 +110,11 @@ On failure the value
.Va -1
is returned and the global variable errno is set to indicate the error.
.Sh ERRORS
+The
.Fn cap_ioctls_limit
-succeeds unless:
+and
+.Fn cap_ioctls_get
+system calls will fail if:
.Bl -tag -width Er
.It Bq Er EBADF
The
@@ -121,6 +124,15 @@ argument is not a valid descriptor.
The
.Fa cmds
argument points at an invalid address.
+.It Bq Er ENOSYS
+The running kernel was compiled without
+.Cd "options CAPABILITY_MODE" .
+.El
+.Pp
+The
+.Fn cap_ioctls_limit
+system call may also return the following errors:
+.Bl -tag -width Er
.It Bq Er EINVAL
The
.Fa ncmds
@@ -132,19 +144,6 @@ would expand the list of allowed
.Xr ioctl 2
commands.
.El
-.Pp
-.Fn cap_ioctls_get
-succeeds unless:
-.Bl -tag -width Er
-.It Bq Er EBADF
-The
-.Fa fd
-argument is not a valid descriptor.
-.It Bq Er EFAULT
-The
-.Fa cmds
-argument points at invalid address.
-.El
.Sh SEE ALSO
.Xr cap_fcntls_limit 2 ,
.Xr cap_rights_limit 2 ,
diff --git a/lib/libc/sys/cap_rights_limit.2 b/lib/libc/sys/cap_rights_limit.2
index 37f311143a28..f08d5520b66e 100644
--- a/lib/libc/sys/cap_rights_limit.2
+++ b/lib/libc/sys/cap_rights_limit.2
@@ -32,7 +32,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 5, 2020
+.Dd March 9, 2023
.Dt CAP_RIGHTS_LIMIT 2
.Os
.Sh NAME
@@ -120,6 +120,9 @@ argument is not a valid active descriptor.
.It Bq Er EINVAL
An invalid right has been requested in
.Fa rights .
+.It Bq Er ENOSYS
+The running kernel was compiled without
+.Cd "options CAPABILITY_MODE" .
.It Bq Er ENOTCAPABLE
The
.Fa rights