Page MenuHomeFreeBSD

D30973.id91600.diff
No OneTemporary

D30973.id91600.diff

Index: sys/compat/linux/linux_misc.c
===================================================================
--- sys/compat/linux/linux_misc.c
+++ sys/compat/linux/linux_misc.c
@@ -1982,7 +1982,7 @@
int
linux_prctl(struct thread *td, struct linux_prctl_args *args)
{
- int error = 0, max_size;
+ int error = 0, max_size, arg;
struct proc *p = td->td_proc;
char comm[LINUX_MAX_COMM_LEN];
int pdeath_signal, trace_state;
@@ -2113,8 +2113,10 @@
error = EINVAL;
break;
case LINUX_PR_SET_NO_NEW_PRIVS:
- linux_msg(td, "unsupported prctl PR_SET_NO_NEW_PRIVS");
- error = EINVAL;
+ arg = args->arg2 == 1 ?
+ PROC_NO_NEW_PRIVS_ENABLE : PROC_NO_NEW_PRIVS_DISABLE;
+ error = kern_procctl(td, P_PID, p->p_pid,
+ PROC_NO_NEW_PRIVS_CTL, &arg);
break;
case LINUX_PR_SET_PTRACER:
linux_msg(td, "unsupported prctl PR_SET_PTRACER");

File Metadata

Mime Type
text/plain
Expires
Tue, Jan 14, 1:43 AM (19 h, 14 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
15789785
Default Alt Text
D30973.id91600.diff (851 B)

Event Timeline