[v5,10/35] capget.2: Use syscall(SYS_...); for system calls without a wrapper

Message ID 20210404115847.78166-11-alx.manpages@gmail.com
State Not applicable
Headers
Series None |

Commit Message

Alejandro Colomar April 4, 2021, 11:58 a.m. UTC
  Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
---
 man2/capget.2 | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)
  

Comments

Michael Kerrisk \(man-pages\) April 5, 2021, 11:29 a.m. UTC | #1
Hi Alex,

On 4/4/21 1:58 PM, Alejandro Colomar wrote:
> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
> ---
>  man2/capget.2 | 20 ++++++++++----------
>  1 file changed, 10 insertions(+), 10 deletions(-)

Patch applied. Again, some minor follow-up edits.

Thanks,

Michael



> diff --git a/man2/capget.2 b/man2/capget.2
> index 6de51b72c..a2d897cc7 100644
> --- a/man2/capget.2
> +++ b/man2/capget.2
> @@ -18,14 +18,17 @@
>  capget, capset \- set/get capabilities of thread(s)
>  .SH SYNOPSIS
>  .nf
> -.B #include <sys/capability.h>
> +.RB "         /* Definition of " CAP_* " and " \
> +_LINUX_CAPABILITY_* " constants */"
> +.B #include <linux/capability.h>
> +.BR "#include <sys/syscall.h>" "      /* Definition of " SYS_* " constants */"
> +.B #include <unistd.h>
>  .PP
> -.BI "int capget(cap_user_header_t " hdrp ", cap_user_data_t " datap );
> -.BI "int capset(cap_user_header_t " hdrp ", const cap_user_data_t " datap );
> +.BI "int syscall(SYS_capget, cap_user_header_t " hdrp ,
> +.BI "            cap_user_data_t " datap );
> +.BI "int syscall(SYS_capset, cap_user_header_t " hdrp ,
> +.BI "            const cap_user_data_t " datap );
>  .fi
> -.PP
> -.IR Note :
> -There are no glibc wrappers for these system calls; see NOTES.
>  .SH DESCRIPTION
>  These two system calls are the raw kernel interface for getting and
>  setting thread capabilities.
> @@ -40,7 +43,7 @@ The portable interfaces are
>  .BR cap_set_proc (3)
>  and
>  .BR cap_get_proc (3);
> -if possible, you should use those interfaces in applications.
> +if possible, you should use those interfaces in applications; see NOTES.
>  .\"
>  .SS Current details
>  Now that you have been warned, some current kernel details.
> @@ -239,9 +242,6 @@ No such thread.
>  .SH CONFORMING TO
>  These system calls are Linux-specific.
>  .SH NOTES
> -Glibc does not provide a wrapper for this system call; call it using
> -.BR syscall (2).
> -.PP
>  The portable interface to the capability querying and setting
>  functions is provided by the
>  .I libcap
>
  

Patch

diff --git a/man2/capget.2 b/man2/capget.2
index 6de51b72c..a2d897cc7 100644
--- a/man2/capget.2
+++ b/man2/capget.2
@@ -18,14 +18,17 @@ 
 capget, capset \- set/get capabilities of thread(s)
 .SH SYNOPSIS
 .nf
-.B #include <sys/capability.h>
+.RB "         /* Definition of " CAP_* " and " \
+_LINUX_CAPABILITY_* " constants */"
+.B #include <linux/capability.h>
+.BR "#include <sys/syscall.h>" "      /* Definition of " SYS_* " constants */"
+.B #include <unistd.h>
 .PP
-.BI "int capget(cap_user_header_t " hdrp ", cap_user_data_t " datap );
-.BI "int capset(cap_user_header_t " hdrp ", const cap_user_data_t " datap );
+.BI "int syscall(SYS_capget, cap_user_header_t " hdrp ,
+.BI "            cap_user_data_t " datap );
+.BI "int syscall(SYS_capset, cap_user_header_t " hdrp ,
+.BI "            const cap_user_data_t " datap );
 .fi
-.PP
-.IR Note :
-There are no glibc wrappers for these system calls; see NOTES.
 .SH DESCRIPTION
 These two system calls are the raw kernel interface for getting and
 setting thread capabilities.
@@ -40,7 +43,7 @@  The portable interfaces are
 .BR cap_set_proc (3)
 and
 .BR cap_get_proc (3);
-if possible, you should use those interfaces in applications.
+if possible, you should use those interfaces in applications; see NOTES.
 .\"
 .SS Current details
 Now that you have been warned, some current kernel details.
@@ -239,9 +242,6 @@  No such thread.
 .SH CONFORMING TO
 These system calls are Linux-specific.
 .SH NOTES
-Glibc does not provide a wrapper for this system call; call it using
-.BR syscall (2).
-.PP
 The portable interface to the capability querying and setting
 functions is provided by the
 .I libcap