summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>1996-08-25 09:53:48 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>1996-08-25 09:53:48 +0000
commita7d1f9524f733967740c34a059cb3e53b41e0072 (patch)
tree586b100db02c8ae8b4fa3423e4ab7c95b959b2bc /sys
parentb941f8023c9dff5757c71d9dbe3983346eb575ef (diff)
sync
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/init_sysent.c4
-rw-r--r--sys/kern/kern_exec.c4
-rw-r--r--sys/kern/syscalls.c3
-rw-r--r--sys/sys/syscall.h5
-rw-r--r--sys/sys/syscallargs.h3
5 files changed, 13 insertions, 6 deletions
diff --git a/sys/kern/init_sysent.c b/sys/kern/init_sysent.c
index 56b4a703284..3717fa41a68 100644
--- a/sys/kern/init_sysent.c
+++ b/sys/kern/init_sysent.c
@@ -2,7 +2,7 @@
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from OpenBSD: syscalls.master,v 1.9 1996/05/18 08:53:10 deraadt Exp
+ * created from OpenBSD: syscalls.master,v 1.10 1996/08/25 09:51:34 deraadt Exp
*/
#include <sys/param.h>
@@ -648,5 +648,7 @@ struct sysent sysent[] = {
sys_rfork }, /* 251 = rfork */
{ 3, s(struct sys_poll_args),
sys_poll }, /* 252 = poll */
+ { 0, 0,
+ sys_issetugid }, /* 253 = issetugid */
};
diff --git a/sys/kern/kern_exec.c b/sys/kern/kern_exec.c
index 52e1a0ec88f..93674459702 100644
--- a/sys/kern/kern_exec.c
+++ b/sys/kern/kern_exec.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kern_exec.c,v 1.5 1996/07/11 00:53:35 deraadt Exp $ */
+/* $OpenBSD: kern_exec.c,v 1.6 1996/08/25 09:53:45 deraadt Exp $ */
/* $NetBSD: kern_exec.c,v 1.75 1996/02/09 18:59:28 christos Exp $ */
/*-
@@ -459,8 +459,10 @@ sys_execve(p, v, retval)
if (attr.va_mode & VSGID)
p->p_ucred->cr_gid = attr.va_gid;
p->p_flag |= P_SUGID;
+ p->p_flag |= P_SUGIDEXEC;
} else {
p->p_flag &= ~P_SUGID;
+ p->p_flag &= ~P_SUGIDEXEC;
}
p->p_cred->p_svuid = p->p_ucred->cr_uid;
p->p_cred->p_svgid = p->p_ucred->cr_gid;
diff --git a/sys/kern/syscalls.c b/sys/kern/syscalls.c
index 9e3fb6bc9e3..c1ceae482d6 100644
--- a/sys/kern/syscalls.c
+++ b/sys/kern/syscalls.c
@@ -2,7 +2,7 @@
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from OpenBSD: syscalls.master,v 1.9 1996/05/18 08:53:10 deraadt Exp
+ * created from OpenBSD: syscalls.master,v 1.10 1996/08/25 09:51:34 deraadt Exp
*/
char *syscallnames[] = {
@@ -333,4 +333,5 @@ char *syscallnames[] = {
"minherit", /* 250 = minherit */
"rfork", /* 251 = rfork */
"poll", /* 252 = poll */
+ "issetugid", /* 253 = issetugid */
};
diff --git a/sys/sys/syscall.h b/sys/sys/syscall.h
index 28d5124c914..778d07b3e4c 100644
--- a/sys/sys/syscall.h
+++ b/sys/sys/syscall.h
@@ -2,7 +2,7 @@
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from OpenBSD: syscalls.master,v 1.9 1996/05/18 08:53:10 deraadt Exp
+ * created from OpenBSD: syscalls.master,v 1.10 1996/08/25 09:51:34 deraadt Exp
*/
#define SYS_syscall 0
@@ -209,4 +209,5 @@
#define SYS_minherit 250
#define SYS_rfork 251
#define SYS_poll 252
-#define SYS_MAXSYSCALL 253
+#define SYS_issetugid 253
+#define SYS_MAXSYSCALL 254
diff --git a/sys/sys/syscallargs.h b/sys/sys/syscallargs.h
index 679cd4bc7cc..742a63d7fb4 100644
--- a/sys/sys/syscallargs.h
+++ b/sys/sys/syscallargs.h
@@ -2,7 +2,7 @@
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from OpenBSD: syscalls.master,v 1.9 1996/05/18 08:53:10 deraadt Exp
+ * created from OpenBSD: syscalls.master,v 1.10 1996/08/25 09:51:34 deraadt Exp
*/
#define syscallarg(x) union { x datum; register_t pad; }
@@ -1217,3 +1217,4 @@ int sys_shmget __P((struct proc *, void *, register_t *));
int sys_minherit __P((struct proc *, void *, register_t *));
int sys_rfork __P((struct proc *, void *, register_t *));
int sys_poll __P((struct proc *, void *, register_t *));
+int sys_issetugid __P((struct proc *, void *, register_t *));