PR_SET_NO_NEW_PRIVS
set the calling thread's no_new_privs attribute
- Provided by: manpages-dev (Version: 6.17-1)
- Source: manpages
- Report a bug
set the calling thread's no_new_privs attribute
Standard C library (libc, -lc)
#include <linux/prctl.h> /* Definition of PR_* constants */ #include <sys/prctl.h>
int prctl(PR_SET_NO_NEW_PRIVS, 1L, 0L, 0L, 0L);
Set the calling thread's no_new_privs attribute. With no_new_privs set to 1, execve(2) promises not to grant privileges to do anything that could not have been done without the execve(2) call (for example, rendering the set-user-ID and set-group-ID mode bits, and file capabilities non-functional).
Once set, the no_new_privs attribute cannot be unset. The setting of this attribute is inherited by children created by fork(2) and clone(2), and preserved across execve(2).
On success, 0 is returned. On error, -1 is returned, and errno is set to indicate the error.
Linux.
Linux 3.5.
prctl(2), PR_GET_NO_NEW_PRIVS(2const), seccomp(2)
For more information, see the kernel source file Documentation/userspace-api/no_new_privs.rst.